Hack x Crack - Comunidad de Seguridad informática

Programación => Scripting => Batch / Bash => Mensaje iniciado por: Gentleman en Agosto 14, 2017, 03:27:09 am

Título: [AYUDA] ¿Cómo realizar un menú de archivos? BATCH (SOLUCIONADO)
Publicado por: Gentleman en Agosto 14, 2017, 03:27:09 am
Buenas. Señores/as estoy intentando realizar un programa que me ayude a administrar mis archivos de manera automatizada, en el cual requiero realizar una lista de los archivos ubicados en la carpeta en la que se encuentra el programa.
Este menú debería ser algo así, teniendo 3 archivos por ejemplo (Texto.txt, Documento.rtf, Filminas.pdf):

1) Texto.txt
2) Documento.rtf
3) Filminas.pdf

Estuve intentando generarlo con el comando "for" pero sin resultado satisfactorios, les presento lo que se me ocurrió pero reitero, sin resultados:

set /a n =0
for %%f in (*) do set /a n=%n%+1 & set opcion%n%=0 & echo %n%) %%f


Lo que me devuelve:

0) Documento.rtf
0) Filminas.pdf
0) Texto.txt

El comando "set opcion%n%=0" es algo adicional que no tiene que ver con el menú en si.
Agradezco alguna aclaración sobre el comando "FOR" o alguna otra pista para resolver este asunto.



SOLUCIÓN:
Después de complicarme un poco, indagando sobre el comando "FOR", encontré que el mismo calcula las variables al inicio de su ejecución (claramente es algo que ya sospechaba), por lo que la solución para generar mi menú fue activar la expansión de variables retardada, lo cual se logra con el comando "SETLOCAL".