setコマンドが&/ &&の直後のコマンドに影響しないのはなぜですか?


1

システム変数を使用するコマンドがたくさんありますが、それらは次のような1行のコマンドです。

set test="blah" && echo %test%

ただし、setコマンドの変数は、同じ行のコマンドに対して「設定」されていないことに気付きました。2番目のコマンドを再実行すると、更新された変数を読み取ることができます。&または&&を使用できますが、効果は同じです。この現象は両方のバッチファイルで発生し、コマンドプロンプトに単純に配置します。

またはにset続くステートメントに影響を与えるコマンドを取得するにはどうすれば&よい&&ですか?

回答:


1

これは、コマンドライン全体が一度に評価されるため、コマンドtestを実行する前に変数が解決されるためですset。

簡単な修正方法は、コマンドをバッチファイルの別々の行に配置して実行することです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.