일부 환경 변수를 설정하고 인수로 보내는 모든 프로그램을 시작하는 쉘 스크립트가 있습니다.
export PATH=$HOME/local/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/lib:$LD_LIBRARY_PATH
export TESTER="MY TEST VAR"
$@
bash
예를 들어 이것을 사용하여 호출 하면 작동합니다.
kjfletch@flatbed:~$ envrun.sh bash
kjfletch@flatbed:~$ echo $LD_LIBRARY_PATH
/home/kjfletch/local/lib:
kjfletch@flatbed:~$ echo $TESTER
MY TEST VAR
내가 터미널 전화를 사용할 때 ( xterm
, aterm
, ...) 내는 LD_LIBRARY_PATH
해제 가져옵니다
kjfletch@flatbed:~$ echo $LD_LIBRARY_PATH
kjfletch@flatbed:~$ echo $TESTER
MY TEST VAR
왜 이런 일이 발생합니까? 이걸 어떻게 막을 수 있습니까? (데비안 5.0을 사용하고 있습니다)
최신 정보
내 터미널은 로그인으로 bash를 호출하지 않습니다.
kjfletch@flatbed:~$ echo $0
bash
내 LD_LIBRARY_PATH
bash 시작 파일에 표시되지 않습니다 (.bash_history와 ~ / .profile 제외).
kjfletch@flatbed:~$ grep "LD" ~/.bash*
kjfletch@flatbed:~$ grep "LD" /etc/bash.bashrc
kjfletch@flatbed:~$ grep "LD" /etc/profile