Mostrar el contenido de una variable en batch

valarno -  
dubcek Mensajes publicados 18626 Fecha de registro   Estado Colaborador Última intervención   -
Hola,

No puedo mostrar el contenido de una variable en batch DOS.
Aquí está mi batch (el objetivo es mostrar la variable "fic" en cada iteración del bucle)

for /f %%a in ('dir /b') do (
set fic=%%a
echo "%fic%"
)

he intentado: echo %%fic, echo %fic%, con comillas, sin comillas, ¡nada funciona!
Si alguien ve el error, ¡estaré agradecido!

De antemano, gracias
Configuración: Windows XP Firefox 3.0.6

5 respuestas

Pico51 Mensajes publicados 846 Estado Miembro 69
 
set fic = %%a
¡No pongas un espacio alrededor del igual! Al menos, inténtalo.
--

Pico ;)
0
valarno
 
En realidad, el problema no es la asignación de un valor a la variable fic (con o sin espacio, efectivamente obtiene un valor). El problema se encuentra en la línea echo.
0
Pico51 Mensajes publicados 846 Estado Miembro 69
 
¿Qué te devuelve la línea echo?
Porque siempre he visto que DEBEMOS poner espacios en BATCH.
--

Pico ;)
0
valarno
 
Lo siento, pero no puedo ayudar con eso.
0
dubcek Mensajes publicados 18626 Fecha de registro   Estado Colaborador Última intervención   5 658
 
hola
intenta
 setlocal enableDelayedExpansion for /f %%a in ('dir /b') do ( set fic=%%a echo !fic! ) setlocal disableDelayedExpansion
0
valarno
 
¡Super Dubcek, mi batch funciona ahora!

Es raro esta sintaxis, es la primera vez que la veo.

Gracias
0
fafa
 
for /f %%a in ('dir /b') do (
set fic=%%a
echo "%fic%"
pause
)
0
dubcek Mensajes publicados 18626 Fecha de registro   Estado Colaborador Última intervención   5 658
 
Je suis ici pour effectuer des traductions. Veuillez fournir le texte que vous souhaitez traduire.
0