bash
의 shebang에서 권장되는 옵션은 무엇입니까?
#!/bin/bash -e
위에서 언급한 대로 현재 보유하고 있습니다. 이 소스 $HOME/.bashrc
.
스크립트를 방해하고 스크립트 시작을 지연시킬 수 있으므로 사용자의 .bashrc
/source를 가져오고 싶지 않습니다 (홈 디렉터리는 일반적으로 네트워크 드라이브에 있음)..profile
이 기능을 비활성화하는 명령줄 옵션이 있습니까?
어떤 다른 제안된 표지판을 배치해야 합니까?
답변1
BASH_ENV
설정되어 있지 않은지 확인하기만 하면 됩니다 . 다음 INVOCATION
섹션 에서bash(1)
:
Bash가 비대화식으로 시작되면 다음과 같은 쉘 스크립트를 실행하십시오. 예를 들어 환경에서 BASH_ENV 변수를 찾아서 확장합니다. 해당 값이 거기에 나타나면 확장된 값을 이름으로 사용합니다. 읽고 실행할 파일입니다. Bash는 다음 명령처럼 작동합니다. 실행되었습니다 : if [-n "$BASH_ENV"]; "$BASH_ENV"; 그러나 PATH 변수의 값은 파일 검색에 사용되지 않습니다. 이름.
쉘이 대화형으로 시작되면 다른 도트 파일( ~/.bash_profile
등)을 읽습니다.~/.bash_logout
불행하게도 스크립트를 사용하더라도 환경을 제어할 수 없습니다 #!env
(단 하나의 인수만 필요하며 이 경우 쉘 프로그램 bash
). 여러분이 바랄 수 있는 최선의 방법은 스크립트나 래퍼에서 환경을 지우고 깨끗한 환경에서 시작하는 것인데, 이는 아마도 여러분이 원하는 것이 아닐 것입니다.
답변2
"man bash"를 조금 읽어보면 괜찮을 것입니다.
'INVOCATION' 섹션에서 '를 찾을 수 있습니다.--구성 파일 없음" 또는"--활고자“옵션이 효과를 발휘해야 합니다.