Ho un file batch che inizializza le variabili tramite SET all'interno di un ciclo for, per una serie di file su disco:variabili del file batch inizializzate in un ciclo for
for %%f in (%MYTARGETDIR%\*config.xml) do (
SET TMPFILE=%%F.tmp
echo In loop %TMPFILE%
)
echo End loop %TMPFILE%
quando si esegue questo in un comando di nuovo di zecca shell (senza TMPFILE definito) il ciclo In echo è vuoto, ma il ciclo finale echo no.
Quando si esegue una seconda volta, è già impostato e ne emette il valore, ignorando il set fino alla chiusura del ciclo.
Idee perché questo è e qual è la soluzione?
Grazie, ho appena visto setlocal ESPANSIONE ENABLEDELATA – theschmitzer