コマンドラインで環境変数を設定し、両方のコマンドに影響を与えるようにします。

コマンドラインで環境変数を設定し、両方のコマンドに影響を与えるようにします。

コマンドは期待どおりに機能します。

> TEST=`uuidgen` sh -c 'echo "$TEST"'
BE6DFB7B-D872-49D7-91E6-24D01644B0A2
> echo $TEST
[empty line]

TESTコマンドラインでローカルに変数を設定し、echoコマンドでそれをエコーし​​ます。この行が実行された後はTEST設定されなくなります。

しかし、これは

> TEST=`uuidgen` sh -c 'echo "$TEST"' && sh -c 'echo "$TEST"'                                          
52EFFEAA-D094-4FC3-8212-6A294918E265
[empty line]

最初のコマンドには変数が設定されていますが、TESTには&&設定されていません。両方注文する。これを達成するための最良の方法は何ですか?

ベストアンサー1

同じシェルを使用して両方のコマンドを実行できます。

TEST=`uuidgen` sh -c 'echo "$TEST" && echo "$TEST"'

おすすめ記事