Título: [Batch] Menu batch dinamico Publicado por: shadowhunter en 1 Noviembre 2013, 11:43 am Necesito ayuda a encontrar donde falla este codigo:
Código: @echo off & COLOR 70 & mode con: cols=75 lines=30 El programa deberia de cargar una serie de nombres de archivos que estarian almacenados en activados.txt de la forma: prueba1.bat prueba2.bat prueba3.bat .... y mostrarlos como un menu de la forma: 1. prueba1 2. prueba2 3. prueba3 .... Pero no consigo que se muestre en pantalla, al igual que tambien deberia de cargar el nombre de un unico archivo almacenado en autorun.txt si existe y ejecutar ese archivo, pero me lo carga y no lo ejecuta. agradezco cualquier ayuda u opinion al respecto. Título: Re: [Bach] Menu bach dinamico Publicado por: Almapa en 1 Noviembre 2013, 12:49 pm Te falta por una parte activar o permitir la extensión de variables para que se puedan definir las variables, que como bien has escrito, van entre "!".
Código: setlocal enabledelayedexpansion Aquí tienes la explicación http://ss64.com/nt/delayedexpansion.html Mira a ver si es eso. Un saludo. Título: Re: [Bach] Menu bach dinamico Publicado por: shadowhunter en 1 Noviembre 2013, 15:15 pm gracias pero sigo sin poder eliminarle la extension y tambien me gustaria que empezara a partir del 10, pero al ponerlo hace cosas extrañas.
Título: Re: [Batch] Menu batch dinamico Publicado por: Almapa en 1 Noviembre 2013, 18:33 pm Ahh perdón, me había dejado media respuesta XD
Cuando ejecutas la línea Código: Set "File!FileCount!=%%~nx#" No puedes quitar la "x" del parámetro "~nx". Sabiendo que estás rastreando solo archivos .bat puedes guardar las variables sin la extensión y añadirle la extensión si es necesario a posteriori. Título: Re: [Batch] Menu batch dinamico Publicado por: Almapa en 1 Noviembre 2013, 18:37 pm Otra solución, que supongo que te gustará más es evitar la extensión solo a la hora de mostrarlo modificando la línea del ECHO.
Código: Echo %%X. !File%%X:.bat=! | MORE De este modo sustituyes el ".bat" por nada. Un saludo Título: Re: [Batch] Menu batch dinamico Publicado por: shadowhunter en 1 Noviembre 2013, 18:50 pm Muchas gracias almapa XD
:D :D Título: Re: [Batch] Menu batch dinamico Publicado por: shadowhunter en 1 Noviembre 2013, 19:03 pm pero el problema que tengo es que comienza a enumerar a partir de 1 yo quiero que empieze por el 11 y si modifico para que empiece desde 10 me da errores...
ayuda por favor! Título: Re: [Batch] Menu batch dinamico Publicado por: Almapa en 2 Noviembre 2013, 15:00 pm Como??? A ver si quieres que lo que se muestre sea
11. prueba1 12. prueba2 13. prueba3 Puedes crear una variable dentro del bucle que sea: Código: set /a variable=%%X+10 y mostrarla donde quieras que aparezca, en el caso que te proponía yo sería: Código: Echo !num!. !File%%X:.bat=! | MORE Si de verdad quieres aprender, este tipo de fallo lo deberías investigar e intentar solucionar tu solo, pero en cuestión de 10 minutos no creo que hayas investigado mucho ;) Un saludo Título: Re: [Batch] Menu batch dinamico Publicado por: shadowhunter en 2 Noviembre 2013, 15:42 pm Si ofender, pero si pido ayuda es por que no consigo que me funcione :xD
Precisamente habia intentado poniendo como tu me propones: Código: set /a variable=%%X+10 pero en ese caso, la variable no me imprime en pantalla nada, solo imprime Código: !File%%X:.bat=! Título: Re: [Batch] Menu batch dinamico Publicado por: Almapa en 3 Noviembre 2013, 09:13 am A mi así:
Código: For %%# in ( me saca esto: 11. prueba1 12. prueba2 13. prueba3 |