Tratando de archivos de proceso por lotes utilizando una. No hay salida, no pasa nada

StackOverflow https://stackoverflow.com/questions/3462496

  •  27-09-2019
  •  | 
  •  

Pregunta

Estoy tratando de pasar archivos de uno en uno (tengo de poner los puntos que desde ejecutable sólo acepta un archivo a la vez). Por lo tanto, en mi lote He follwoing:

FOR /F %file IN ('dir /b /s *.css') DO CALL myExecutable.exe %file 

Me debería ver a cabo en archivos mismo directorio pero no pasa nada, no hay errores se muestran tampoco. Me estoy perdiendo algo aquí?

¿Fue útil?

Solución

Hay varios errores en su ejemplo:

  • nombre del parámetro FOR es una sola letra única
  • CALL se utiliza para llamar a otro archivo por lotes o un subprograma en el archivo por lotes existentes, no ejecutables
  • el parámetro FOR debe ser referenciado con dos%, cuando en archivo por lotes
  • es necesario utilizar un delimitador no-espacio, si el directorio de ejecutar este comando en cualquier subdirectorio o, o si alguno de los archivos tiene un espacio en el nombre

Con esto en mente, aquí está el comando adecuado que debe utilizar:

for /f "usebackq delims=|" %%f in (`dir /b /s *.css`) do myexecutable.exe "%%f"

A continuación de mi respuesta a una pregunta tan similares, donde doy más detalles sobre el uso de FOR para procesar todos los archivos en un directorio.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top