環境変数を印刷/エコーするにはどうすればいいですか? 質問する

環境変数を印刷/エコーするにはどうすればいいですか? 質問する

設定されている環境変数を印刷するにはどうすればいいですか?

NAME=sam echo "$NAME" # empty

ここで使用してみると、それが機能していることがわかりますeval。これが正しい方法でしょうか?

NAME=sam eval 'echo $NAME' # => sam

ベストアンサー1

これらは異なるコマンドとして実行する必要があります。例:

NAME=sam; echo "$NAME"
NAME=sam && echo "$NAME"

空文字列への展開は$NAME、 を実行する前にシェルによって行われるため、変数がコマンドの環境に渡されるecho時点では、展開はすでに行われています (null 文字列に)。NAMEecho

1 つのコマンドで同じ結果を得るには:

NAME=sam printenv NAME

おすすめ記事