質問
バッシュではshell_variable=値 bash child_command作るシェル変数環境変数サブコマンド。
これは、シェル変数を子プロセスの環境変数に昇格させるための組み込みシェル(shおよびbash)機能ですか? envコマンドに似ていますか?
これを説明する文書を見つけようとしましたが、まだ見つかりませんでした。参考資料をご提供いただきありがとうございます。
豚.sh
env | grep BUILD_ID
実施例1
BUILD_ID=hoge
bash hoge.sh
[result] (none displayed)
実施例2
BUILD_ID=hoge bash hoge.sh
[Result]
BUILD_ID=hoge
実施例3
env BUILD_ID=hogehoge bash hoge.sh
[Result]
BUILD_ID=hogehoge
引用する
ベストアンサー1
POSIX:部分2.9.1 簡単なコマンド
...変数の割り当てはコマンドの実行環境にエクスポートする必要があり、現在の実行環境に影響を与えてはいけません...
また、複数のシェルマニュアル(「簡単なコマンド」を検索)
はい
変数は現在の実行環境に影響を与えてはいけません。
$ var=33; var=11 echo "$var"; echo "$var"
33
33
変数の割り当てを実行環境にエクスポートする必要があります。
$ var=33; var=11 sh -c 'echo "$var"'; echo "$var"
11
33