Batch: retornando um valor de um SETLOCAL EnableDelayedExpansion
Eu me pergunto por que esse código não funciona conforme o esperado:
@ECHO off
SET S1=HELLO
SETLOCAL EnableDelayedExpansion
SET S2=!S1! WORLD^^!
ECHO !S2!
ENDLOCAL & SET S1=!S2!
ECHO %S1%
PAUSE
Resultado
HELLO WORLD!
!S2!
Saída esperada:
HELLO WORLD!
HELLO WORLD!
Obrigado