다음 쉘 옵션의 의미는 무엇입니까 - shopt -s nullglob extglob [중복]

다음 쉘 옵션의 의미는 무엇입니까 - shopt -s nullglob extglob [중복]

우리는

 bash -version
GNU bash, version 4.2.46(1)-release (x86_64-redhat-linux-gnu)

다음 쉘 옵션의 의미는 무엇입니까(bash 스크립트에서)

shopt -s nullglob extglob

취소하는 반대 방법은 무엇인가요?

답변1

shopt -uin을 사용하여 셸 옵션을 설정 해제할 수 있습니다 bash.

shopt -u nullglob extglob

두 옵션 모두 설정이 해제됩니다. 이에 대해서는 bash매뉴얼과 help shopt대화형 쉘 모두에서 설명됩니다 bash.

여기에 언급된 특정 옵션은 bash설명서에 잘 설명되어 있지만 간단히 말해서

  • nullglob: 파일 이름과 일치하지 않는 파일 이름 와일드카드 패턴은 확장되지 않은 채로 남아 있는 것이 아니라 단순히 아무 것도 확장되지 않습니다.

    $ echo my*file
    my*file
    $ shopt -s nullglob
    $ echo my*file
    

    (마지막 echo것은 빈 줄 외에는 출력이 없습니다)

  • extglob: 확장된 와일드카드 패턴을 활성화합니다 !(this|that)(예: 와 일치 하지만 또는 *와 같은 이름은 일치하지 않음 ).thisthat

    $ shopt -s extglob
    $ touch this that theother
    $ echo !(this|that)
    theother
    

    다양한 유형의 확장된 와일드카드 패턴이 설명서에 설명되어 있습니다 bash.

관련 정보