シェルとシェルの間で環境変数を引き継ぐ方法

OKWave 2007年11月06日 10時00分

  • このエントリーをはてなブックマークに追加
シェルとシェルの間で環境変数を引き継ぐ方法

初めて質問させていただきます。
シェル内でsetenvにて定義された変数を別のシェルにて使う方法があれば教えてください。
よろしくお願いします。

良回答

あ〜, foo.csh の中で
bar.csh
という形で呼出しているんですね.
この場合, foo.csh を実行しているシェルとは別に bar.csh を実行するためにシェルを起動します. そして bar.csh の中で設定した環境変数は bar.csh のためのシェルが終了すると同時に破棄されます. そのため bar.csh の中で環境変数を設定しても, foo.csh には影響しません.
これに対し foo.csh の中に
source bar.csh
と書いてやると, foo.csh を実行しているシェルが bar.csh も実行します. なので, 「別のファイルで環境変数を設定し, それを元のシェルにも引き継ぎたい」場合には source (Bourne shell 系なら . というコマンド) を使います.

  • このエントリーをはてなブックマークに追加
関連キーワード
OS

SpecialPR