いくつかの環境変数を設定し、引数として送信するプログラムを起動するためのシェルスクリプトがあります。
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
なぜこれが起こるのですか?どうすればこれを止められますか?(私はDebian 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