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?

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

¡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
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.