Bash에서 파일 이름과 확장자를 추출하는 방법

Basheseo Pail Ileumgwa Hwagjangjaleul Chuchulhaneun Bangbeob



Bash는 Linux 및 Unix 운영 체제에서 일반적으로 사용되는 강력한 명령줄 셸입니다. Bash에서 파일 작업을 할 때 일반적인 작업 중 하나는 파일 경로에서 파일 이름과 확장자를 추출하는 것입니다. 이 기사에서는 Bash에서 파일 이름과 확장자를 추출하는 방법에 대해 설명하고 스크립트에서 이러한 값을 사용하는 방법에 대한 예를 제공합니다.

Bash에서 파일 이름 및 확장자 추출

Bash에서 파일 이름과 확장자를 추출하는 방법에는 여러 가지가 있습니다. 다음은 세 가지 일반적인 방법입니다.







1: 기본 이름 명령 사용

그만큼 basename 명령은 파일 경로에서 파일 이름을 반환하고 파일 이름과 확장자를 추출합니다. 당신은 사용할 수 있습니다 basename 명령 -접미사 아래 주어진 코드에서와 같이 파일 이름에서 지정된 접미사를 제거하는 옵션:



#!/빈/배시
# 예제 파일 경로
파일 경로 = '/path/to/file.txt'

# 파일명 추출
파일 이름 =$ ( basename $file_path )

# 확장자 추출
확대 = ' ${파일 이름##*.} '

에코 '파일 이름: $파일명 '
에코 '확대: $extension '







2: 매개변수 확장 사용

그만큼 매개변수 확장 구문은 문자열을 조작할 수 있게 해주는 Bash의 강력한 기능입니다. 매개변수 확장을 사용하여 파일 이름과 확장자를 추출하려면 다음을 사용할 수 있습니다. ${매개변수##단어} 아래 코드와 같이 매개변수의 시작 부분에서 지정된 패턴의 가장 긴 일치 항목을 제거하는 구문입니다.

#!/빈/배시
# 예제 파일 경로
파일 경로 = '/path/to/file.txt'
# 파일명 추출
파일 이름 = ' ${파일_경로##*/} '
# 확장자 추출
확대 = ' ${파일 이름##*.} '
에코 '파일 이름: $파일명 '
에코 '확대: $extension '



3: IFS(Internal Field Separator) 변수 사용

그만큼 IFS 변수 Bash는 다음을 설정하여 문자열을 필드로 분할하는 데 사용합니다. IFS 변수 경로 구분자('/')로. 아래 주어진 코드를 사용하여 이 변수를 통해 파일 경로에서 파일 이름과 확장자를 추출할 수 있습니다.

#!/빈/배시
# 예제 파일 경로
파일 경로 = '/path/to/file.txt'
# IFS를 '/'로 설정
IFS = '/' 읽다 -아르 자형 -ㅏ 부속 <<< ' $file_path '

# 파일명 추출
파일 이름 = ' ${부품[-1]} '
# 확장자 추출
확대 = ' ${파일 이름##*.} '
에코 '파일 이름: $파일명 '
에코 '확대: $extension '

결론

파일 경로에서 파일 이름과 확장자를 추출하는 것은 Bash에서 파일 작업을 할 때 일반적인 작업입니다. 이 기사에서는 Bash에서 파일 이름과 확장자를 추출하는 세 가지 일반적인 방법에 대해 설명했습니다. 를 사용하여 basename 명령, 매개변수 확장 구문 또는 IFS 변수 , 파일 경로에서 파일 이름과 확장자 값을 쉽고 빠르게 추출할 수 있습니다.