コマンドは期待どおりに機能します。
> 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"'