1. ホーム
  2. bash

[解決済み] 環境変数を表示/エコーするには?

2022-03-05 19:47:26

質問

設定されたばかりの環境変数を表示するにはどうしたらいいですか?

NAME=sam echo "$NAME" # empty

を使用していることがわかります。 eval が動作します。この方法でいいのでしょうか?

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

解決方法は?

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

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

展開図 $NAME を空文字列に変換するのは、先にシェルが行っています。 echo ということで、その時点では NAME 変数に渡されます。 echo コマンドの環境では、すでに展開が行われています(null文字列に)。

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

NAME=sam printenv NAME