Script em lote do Windows para vários arquivos

1

Eu tenho vários arquivos ascii como Total-0100.dat e quero processar em lote usando um executável em outro diretório.

Em suma,

  1. Eu tenho vários arquivos com incremnet de 100 ou 1000, e. Total-001000.dat, Total-02000.dat até Total-600000.dat. eles estão em uma unidade / drictory dizer A. dizer: A: \ work .

  2. Eu quero processar esses arquivos em lote usando o executável em meus arquivos de programa da unidade C. diga: C: \ Arquivos de programas \ Program \ run.exe

  3. Por fim, guardo esses arquivos convertidos em outro diretório. diga: A: \ work1 Eu tenho um código inicial, que não está funcionando. Preciso de ajuda nesse sentido.

Estou trabalhando no Windows 7 ...

@echo off
for /l %%i in (1,1,400000) do
"C:\Program Files\Program\run.exe" Total-%%i.dat
    
por TheCoder 01.05.2016 / 23:12

1 resposta

3

Você esqueceu de adicionar '(' e ')' após do , escreva assim:

@echo off
for /l %%i in (1,1,400000) do (
"C:\Program Files\Program\run.exe" Total-%%i.dat )

ou em uma linha sem colchetes:

@echo off
for /l %%i in (1,1,400000) do "C:\Program Files\Program\run.exe" Total-%%i.dat

Para executar esse arquivo em lote (que você salvou, por exemplo, em c:\test\script.bat ) de outro diretório, basta alterar seu diretório atual em cmd para A:\work1 , abrir cmd e digitar:

C:\Windows\system32> a:
A:\> cd work1
A:\work1> c:\test\script.bat

ou copie o script para A:\work1\script.bat e execute seu script a partir dele:

C:\Windows\system32> a:
A:\> cd work1
A:\work1> script.bat

Uma alternativa é abrir o diretório A:\work1 no Explorer e manter pressionado o SHIFT + clique com o botão direito do mouse no painel direito em um branco vazio e escolha Open command window here no menu.

ou use o caminho completo no seu script:

@echo off
for /l %%i in (1,1,400000) do (
"C:\Program Files\Program\run.exe" A:\work1\Total-%%i.dat )
    
por 02.05.2016 / 01:37