¿Por qué el comando set no afecta a los comandos seguidos inmediatamente con & / &&?


1

Tengo un montón de comandos que usan una variable del sistema y son comandos de una línea como:

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

Sin embargo, noté que la variable del comando set no está "establecida" para los comandos en la misma línea. Si vuelvo a ejecutar el segundo comando, podrá leer la variable actualizada. Puedo usar cualquiera de los dos & amp; o & amp; & amp; Y los efectos son los mismos. Este comportamiento se produce con ambos archivos de proceso por lotes y simplemente lo coloca en el símbolo del sistema.

Como consigo el set comando para afectar a las declaraciones siguientes & o &&?

Respuestas:


1

Esto se debe a que toda la línea de comandos se evalúa a la vez, por lo que la variable test se resuelve antes de ejecutar el set mando.

Una solución fácil podría ser colocar los comandos en líneas separadas en un archivo por lotes y ejecutar eso.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.