Exécutez une commande batch pour chaque fichier d'un répertoire


10

J'ai un programme Java fonctionnant avec cette syntaxe:

command.jar namefile

Je dois exécuter ce programme pour 1600 fichiers dans un répertoire. Comment exécuter automatiquement cette commande pour chaque fichier?

Existe-t-il une commande batch DOS? Ou d'une autre manière?

Réponses:


14

Le moyen le plus simple est de loin d'exécuter simplement une forboucle sur tous les fichiers. La bonne chose est que le set(l'entrée pour le for-loop) accepte les mêmes caractères génériques comme le régulier cmd.

Pour une utilisation dans un fichier batch:

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

Pour une utilisation à partir de la ligne de commande:

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

Salut! Cela fonctionne avec ceci: pour% f dans (*) do command.jar% f Vraiment vraiment merci! :)

@E_M: J'ai modifié ma réponse pour que ce soit clair.
— Bobby

En effet, vous devez échapper le% dans un fichier de commandes. Pour être sûr, vous devez d'abord ajouter «echo» au début de la commande pour voir exactement ce qui sera exécuté.
— mrexodia
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.