Ejecute un comando por lotes para cada archivo en un directorio

10

Tengo un programa Java trabajando con esta sintaxis:

command.jar namefile

Tengo que ejecutar este programa para 1600 archivos en un directorio. ¿Cómo puedo ejecutar este comando para cada archivo automáticamente?

¿Hay un comando por lotes de DOS? O de otra manera?

al azar
fuente

Respuestas:

14

La forma más fácil es, con mucho, simplemente ejecutar un forbucle sobre todos los archivos. Lo bueno es que set(la entrada para el forbucle) acepta los mismos comodines que los regulares cmd.

Para usar en un archivo por lotes:

FOR %%f IN (*) DO command.jar %%f

Para usar desde la línea de comando:

FOR %f IN (*) DO command.jar %f
Poli
fuente
¡Hola! Funciona con esto: para% f en (*) do command.jar% f Realmente realmente gracias! :)
@E_M: Edité mi respuesta para aclarar eso.
Bobby
Esto se debe a que debe escapar del% en un archivo por lotes. Para estar seguro, primero debe agregar 'echo' al comienzo del comando para ver qué se ejecutará exactamente.
mrexodia