コマンドラインで環境変数を設定してコマンドに表示するにはどうすればよいですか?

コマンドラインで環境変数を設定してコマンドに表示するにはどうすればよいですか?

走れば

export TEST=foo
echo $TEST

fooを出力します。

走れば

TEST=foo echo $TEST

いいえ。エクスポートやスクリプトを使用せずにこの機能を取得するにはどうすればよいですか?

ベストアンサー1

これは、シェルがコマンドラインから変数を拡張するためです。今後実際にコマンドを実行しますが、この時点では変数は存在しません。使用する場合

TEST=foo; echo $TEST

動作します。

export後で実行されるコマンドの環境に変数が表示されます(bashでこれがどのように機能するかについては、参照help export)。 1つのコマンド環境にのみ変数を表示する必要がある場合は、試した方法を使用してください。

TEST=foo your-application

シェル構文はこれを次のように説明します。機能的に以下と同じ:

export TEST=foo
your-application
unset TEST

バラより仕様もっと学ぶ。

興味深いことに、このexportコマンドは変数のエクスポートフラグを切り替えます。名前。その場合は、次のようにしてください。

unset TEST
export TEST
TEST="foo"

TESTエクスポート時に定義されていない場合でもエクスポートされます。ただし、unsetエクスポートした属性はここで削除する必要があります。

おすすめ記事