Como crear archivos ".bat", de una lista

Busco la manera de crear un archivo ".bat" por cada archivo ".iso", que se encuentran en una carpeta.

Son mas de 300 archivos y para hacerlo de forma manual es muy tedioso, aun que de esa manera lo estoy haciendo.

Les muestro el código que contiene cada archivo ".bat"

@echo off
C:
CD /D D:\Archivos\otros\iso\
vns.exe D:\Archivos\otros\iso\bat\******.iso

Estoy remplazando los ****** por el nombre correspondiente de cada ".iso" y guardando con el mismo nombre que contiene la linea de comandos.

¿Habría la manera de hacer lo de forma automatizada?

1 respuesta

Respuesta
1

No entiendo muy bien lo que quieres hacer, básicamente porque no sé que hace el ejecutable VNS.EXE. Parece que es un componente de Java, pero ¿qué le hace ese programa a los ISO?
Tampoco me queda claro por qué quieres un BAT por cada ISO. ¿No bastaría un único BAT que recorriera todos los ISO?

Gracias por responder;

Lo que pasa es que es un emulador. Por ende el emulador reconoce los archivos .iso, más el launcher que estoy usando, le tengo que dar la instrucción que ejecute la aplicación requerida y después la ruta donde se encuentra cada archivo por separado. Por eso recuro a un .bat que de la instrucción, por cada uno.

Imagino que entonces lo que quieres es generar un BAT por cada ISO para poder utilizar esos BATs para lanzar el emulador correspondiente a cada ISO. Creo que el siguiente BAT podría hacer lo que necesitas:

@echo off
set carpeta=D:\Archivos\otros\iso
pushd %carpeta%
for /f "tokens=* delims=" %%i in ('dir /b *.iso') do > "bat\%%~ni.bat" echo vns.exe "%%i"
Popd

Prueba y me dices.

Perdón, acabo de darme cuenta de que no he respetado la "literalidad" de los BAT que necesitas. Prueba, mejor, con esto:

@echo off
set carpeta=D:\Archivos\otros\iso
pushd %carpeta%
for /f "tokens=* delims=" %%i in ('dir /b *.iso') do (
> "bat\%%~ni.bat" echo @echo off
>> "bat\%%~ni.bat" echo C:
>> "bat\%%~ni.bat" echo CD /D %carpeta%
>> "bat\%%~ni.bat" echo vns.exe "%%i"
)
Popd

No he cumplido la "especificación" de la línea del VNS.EXE, la que incluyes como:

vns.exe D:\Archivos\otros\iso\bat\******.iso

porque no me encaja que se aplique a un archivo ISO que está en la carpeta BAT, parece más razonable que se aplique al archivo ISO que está en la carpeta de los ISOs, pero puede ser que me haya pasado de listo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas