Execute um comando em lote para cada arquivo em um diretório


10

Eu tenho um programa Java trabalhando com esta sintaxe:

command.jar namefile

Eu tenho que executar este programa para 1600 arquivos em um diretório. Como posso executar este comando para todos os arquivos automaticamente?

Existe um comando em lote do DOS? Ou de outra maneira?

Respostas:


14

A maneira mais fácil é, de longe, simplesmente executar um forloop em todos os arquivos. O bom é que a set(a entrada para o forloop) aceita os mesmos curingas que o normal cmd.

Para uso em um arquivo em lotes:

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

Para uso na linha de comando:

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

Oi! Funciona com isso: para% f em (*) do command.jar% f Realmente muito obrigado! :)

@ E_M: editei minha resposta para deixar isso claro.
Bobby

Isso ocorre porque você precisa escapar do% em um arquivo em lotes. Para estar seguro, você deve primeiro acrescentar 'eco' ao início do comando para ver o que exatamente será executado.
Mrexodia # 23/18
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.