Linuxpia/Linux 명령어

[리눅스 명령어] shopt 옵션 사용 사례

Linuxpia4U 2024. 4. 19. 03:06
반응형

shopt 옵션 사용 사례

shopt 명령어를 사용하는 몇 가지 사례를 소개하겠습니다. 이러한 옵션은 사용자의 쉘 환경을 사용자의 요구에 맞게 더 잘 조정할 수 있게 도와줍니다.

  1. globstar:
    • globstar 옵션을 활성화하면, ** 패턴을 사용하여 디렉터리 트리 내의 모든 파일과 디렉터리를 재귀적으로 매칭할 수 있습니다.
    • 예제: 모든 .txt 파일을 현재 디렉터리와 하위 디렉터리에서 찾습니다.
      shopt -s globstar
      ls **/*.txt
  2. dotglob:
    • dotglob 옵션을 활성화하면, 와일드카드 매칭 시 숨김 파일(이름이 점(.)으로 시작하는 파일)을 포함합니다.
    • 예제: 현재 디렉터리의 모든 파일과 디렉터리(숨김 파일 포함)를 나열합니다.
      shopt -s dotglob
      ls *
  3. nocaseglob:
    • nocaseglob 옵션을 활성화하면, 파일명 확장 시 대소문자를 구분하지 않습니다.
    • 예제: 대소문자 구분 없이 모든 .JPG 파일을 찾습니다.
      shopt -s nocaseglob
      ls *.jpg
  4. histappend:
    • histappend 옵션을 활성화하면, 쉘 세션이 종료될 때 현재 세션의 히스토리를 기존 히스토리 파일에 추가합니다.
    • 예제: 터미널을 닫을 때 현재의 명령어 히스토리를 히스토리 파일에 추가합니다.
      shopt -s histappend
  5. cdspell:
    • cdspell 옵션을 활성화하면, cd 명령어를 사용할 때 작은 오타를 자동으로 수정합니다.
    • 예제: 디렉터리 이름에 오타가 있을 경우에도 cd 명령어가 정확한 디렉터리로 이동합니다.
      shopt -s cdspell
      cd /etc/httpd   # '/etc/httpd'가 없고 '/etc/apache2'가 존재하면, '/etc/apache2'로 이동합니다.

caption: 옵션 nocaseglob에 의해 대소문자 구별없이 출력

정리

이러한 옵션들은 쉘 스크립트 작성 시 또는 인터랙티브 쉘 사용 시 특정 작업을 좀 더 편리하게 수행할 수 있도록 해줍니다. 환경에 맞게 적절한 shopt 옵션을 활성화하여 작업의 효율성을 높일 수 있습니다.

반응형