export
Bash ビルトイン、echo
$PATH
の実行可能ファイルです .だから export
新しいプロセスを生成することなく、Bash によってそのまま解釈されます。
-c
を使用して文字列として渡すことができるコマンドを解釈するには、Bash を取得する必要があります。 オプション:
bash -c "export foo=bar; echo \$foo"
また:
bash -c
の各呼び出し 新しい環境から始めます。たとえば、次のようになります:
bash -c "export foo=bar"
bash -c "echo \$foo"
動作しないでしょう。 2 回目の呼び出しでは foo
が記憶されていません .
代わりに、;
で区切られたコマンドをチェーンする必要があります bash -c
の 1 回の呼び出しで :
bash -c "export foo=bar; echo \$foo"
C シェルを使用している場合 -
setenv PATH $PATH":/home/tmp"