bash를 호출할 때 "--rcfile /dev/null" 옵션은 "--norc"와 동일한 효과를 가집니까?

bash를 호출할 때 "--rcfile /dev/null" 옵션은 "--norc"와 동일한 효과를 가집니까?

XY 문제 시나리오를 피하기 위해 이 질문을 하는 이유를 설명하겠습니다.

shopt -s extglob그런 일이 실제로 효과가 있었기 때문에 내 파일 ~/.bashrc에 설정했던 것을 기억합니다 @(pattern-list).

그런데 방금 확인해 보니 ~/.bashrc해당 옵션이 아직 설정되지 않았습니다.

그래서 나는 그것이 어디서 왔는지 알아보기로 결정했습니다.

  • bash --norc다른 쉘을 시작하여 실행 하면 shopt다음 줄이 표시됩니다 extglob off.
  • bash --rcfile /dev/null그러나 다음 을 shopt통해 시작하면extglob on

이는 어떤 파일이 설정되어 있는지 파악하는 데 실제로 도움이 되지 않습니다 extglob.

의견을 바탕으로 PS4=' $BASH_SOURCE:$LINENO: ' bash -lixc true |& grep extglob주어진

   /usr/share/bash-completion/bash_completion:45: shopt -s extglob progcomp
   /usr/share/bash-completion/bash_completion:45: shopt -s extglob progcomp

답변1

Debian/Ubuntu에서 /etc/bash.bashrcBash는 비슷한 발음을 가집니다 ~/.bashrc. 이를 사용하는 것은 Red Hat이 /etc/모든 사용자에게 전달하는 컴파일 타임 옵션입니다 .bashrc.

이것데비안 문서--rcfile이는 둘 다 재정의되어야 하며 --norc둘 다 읽는 것이 금지되어야 함 을 의미하는 것 같습니다 .

--norc쉘이 대화형인 경우 시스템 전체 /etc/bash.bashrc및 개인 초기화 파일을 읽고 실행하지 마십시오.~/.bashrc

--rcfile file/etc/bash.bashrc시스템 전체 초기화 파일 및 표준 개인 초기화 파일 대신 파일에서 명령을 실행합니다.~/.bashrc

그러나 @muru가 댓글에서 말했듯이 이것은 잘못된 것 --rcfile /dev/null같습니다 /etc/bash.bashrc. 자, 저기 보세요 shopt.

관련 정보