> 파일 및 디렉토리 관리 > basename

basename 명령어 가이드

`basename` 명령어는 파일 경로에서 디렉토리 부분을 제외한 순수 파일명(또는 디렉토리명)만 추출하는 데 사용됩니다. 쉘 스크립트에서 파일 이름을 깔끔하게 처리해야 할 때 매우 유용합니다.

basename 개요

`basename`은 주어진 경로 문자열에서 마지막 슬래시(/) 이후의 문자열을 반환합니다. 즉, 파일 또는 디렉토리의 전체 경로에서 그 이름 부분만을 가져오는 명령어입니다.

basename의 역할

`basename` 명령어는 주로 다음과 같은 상황에서 활용됩니다:

주요 활용 분야

  • 쉘 스크립트: 파일 처리 루프에서 파일명만 추출하여 특정 작업을 수행할 때.
  • 로그 분석: 경로가 포함된 로그에서 파일명만 필터링하여 통계 자료를 만들 때.
  • 자동화: 파일 이름을 기반으로 다른 파일명을 생성하거나 처리할 때.

주요 basename 명령어 옵션

`basename` 명령어는 간단하지만, 유용한 옵션을 통해 특정 확장자를 제거하는 등의 추가 기능을 수행할 수 있습니다.

1. 기본 사용법

2. 확장자 제거 옵션

생성된 명령어:

명령어를 조합해 보세요.

설명:

`basename` 명령어를 실행합니다.

위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.

사용 예시

`basename` 명령어의 실용적인 사용 예시들을 통해 파일명 추출 및 처리를 연습해 보세요.

파일 경로에서 파일명 추출

basename /home/user/documents/report.pdf

`/home/user/documents/report.pdf` 경로에서 순수 파일명인 `report.pdf`를 추출합니다.

디렉토리 경로에서 마지막 디렉토리명 추출

basename /var/log/apache2/

`/var/log/apache2/` 경로에서 마지막 디렉토리명인 `apache2`를 추출합니다.

파일 확장자 제거

basename image.png .png

`image.png` 파일명에서 `.png` 확장자를 제거하여 `image`만 남깁니다.

복잡한 확장자 제거

basename archive.tar.gz .tar.gz

`archive.tar.gz`에서 `.tar.gz` 확장자를 제거하여 `archive`만 남깁니다.

스크립트에서 basename 활용 예시

for file in *.log; do
  base_name=$(basename "$file" .log)
  echo "Processing: $base_name"
done

for 루프를 사용하여 `.log` 확장자를 가진 파일들의 기본 이름만 출력하는 쉘 스크립트 예시입니다.


관련 명령어

기능적으로 유사하거나 함께 자주쓰이는 명령어들입니다.


동일 카테고리 명령어