PDA

View Full Version : [BATCH] Echo in ciclo for


Bazzu
30-10-2012, 22:34
Ciao a tutti,

sto cercando di fare un batch semplice semplice di questo tipo:

@echo off
cls
del prova.txt
for %%a in (*) do (
set file=%%a
echo %%a
echo %file%
pause
)

dentro %%a ciclicamente viene messo il nome dei file nella cartella in cui gira il programma e usando l'echo viene messo a video.
volevo mettere il valore della variabile %%a nella variabile file e farne l'echo ma ricevo sempre "ECHO disattivato".

Attivando l'echo in alto o poco prima del richiamo del comando invece fa apparire "ECHO attivato"

Sbagli l'assegnazione del valore nella variabile f? si puo fare almeno?

einstein1969
31-10-2012, 20:34
Ciao a tutti,

sto cercando di fare un batch semplice semplice di questo tipo:

@echo off
cls
del prova.txt
for %%a in (*) do (
set file=%%a
echo %%a
echo %file%
pause
)

dentro %%a ciclicamente viene messo il nome dei file nella cartella in cui gira il programma e usando l'echo viene messo a video.
volevo mettere il valore della variabile %%a nella variabile file e farne l'echo ma ricevo sempre "ECHO disattivato".

Attivando l'echo in alto o poco prima del richiamo del comando invece fa apparire "ECHO attivato"

Sbagli l'assegnazione del valore nella variabile f? si puo fare almeno?

Bisogna attivare l'espansione dinamica delle variabili.


@echo off
setlocal enabledelayedexpansion
cls
del prova.txt
for %%a in (*) do (
set file=%%a
echo %%a
echo !file!
pause
)