Script CMD recursivo ou BAT do Windows

2

Como posso criar um BAT ou CMD que irá iterar através de uma árvore de pastas e executar o mesmo comando durante cada arquivo de pasta?

Por exemplo

myexe.exe C:\Documents and Settings\folder1\filename.txt
myexe.exe C:\Documents and Settings\folder2\filename.txt

Notas:

  • O nome do arquivo é o mesmo em cada pasta encontrada.
  • Os nomes das pastas serão todos diferentes.

Sua ajuda é muito apreciada ou qualquer sugestão de por onde começar.

    
por codex73 10.08.2010 / 04:30

2 respostas

3

Adapte este arquivo em lote às suas necessidades:

@echo off
cd "\program files"
for /f "usebackq delims=|" %%a in ('dir filename.txt /s/b') do (
        echo %%a
        myexe "%%a"
)

Certifique-se de envolver a variável entre aspas duplas, caso o nome do arquivo possua espaços.

    
por 10.08.2010 / 04:55
2

Uma abordagem do PowerShell:

Get-ChildItem -Recurse . FILENAME.TXT | foreach {
    $_
    & myexe $_
}
    
por 24.12.2011 / 04:49