ENV(1)

名称
env - 環境変数の値を設定、表示する

書式
env [-i] [name=value ...] [utility [argument ...]]

解説
env ユーティリティは、コマンド行で指定された環境変数の値を変更してから、 別のユーティリティ utility を実行します。 引数で name=value を指定することにより、環境変数 name の値を value にセットします。

オプションは次の通りです:

-i  指定された環境変数のみを使用して utility を実行します。 env から継承した環境は無視します。

utility を指定しないで実行した場合、 env は、環境中の環境変数の名前と値を、 1 行につき名前 / 値の組 1 個の割合で表示します。

env ユーティリティは、 ‘#!’ 構造とともに使用すると役に立つ場合があります ( execve(2) を参照してください)。 “#!/usr/local/bin/foo” と “#!/usr/bin/env /usr/local/bin/foo” の唯一の違いは、 /usr/local/bin/foo 自身が解釈される場合でも後者は動作するという点です。 このように env を使用すると、望み通りに環境を設定できるだけでなく、 foo をパス無しで参照できます。

環境変数
env ユーティリティは、名前に ‘/’ が 1 個も含まれない場合、指定された utility を見付けるために PATH 環境変数を使用します。

診断
終了ステータス 126 は utility が見付かったものの実行不可だったことを示します。 終了ステータス 127 は utility が見付からなかったことを示します。

互換性
env ユーティリティは、 -i の同義語として、 - オプションを受け付けます。

関連項目
printenv(1), sh(1), execvp(3), environ(7)

規格
env ユーティリティは p1003.1-2001 に適合しています。

バグ
当たり前ですが、 env ユーティリティは、名前にイコール記号 (‘=’) を含むユーティリティ引数をちゃんと扱えません。