Localizando arquivos por nome curinga e copie-os

1

Eu tenho um programa que se compila e gera .exe arquivos em seus subdiretórios (como release_win_* diretórios para cada aplicativo "App1", "App2", etc.).

Gostaria de encontrar esses arquivos .exe específicos gerados e copiá-los para um local bin específico.

Eu tenho:

SET /p copyresult = dir /b /mydir | findstr /s /m release_win_64/*.exe
copy /y %copyresult% /bin

No entanto, tenho um problema. O comando findstr parece não aceitar curingas como esse. Eu não consigo usar o curinga. Não coloca nenhum resultado no console.

Você tem alguma pista?

EDITAR: Adicionada "release_win_64 / *. exe" como curinga

    
por xhaltar 14.11.2014 / 14:00

1 resposta

4

"Eu gostaria de encontrar especificamente esses arquivos .exe gerados e copiá-los para um local de depósito específico."

Usando um arquivo em lotes:

cd \mydir
for /r %%a in (*.exe) do xcopy "%%a" \bin /i

Na linha de comando:

cd \mydir
for /r %a in (*.exe) do xcopy "%a" \bin /i

Para corresponder release_win_64\*.exe como curinga

Usando um arquivo em lotes:

cd \mydir
for /f %%a in ('dir /b /s release_win_64\*.exe') do xcopy "%%a" \bin /i

Na linha de comando:

cd \mydir
for /f %a in ('dir /b /s release_win_64\*.exe') do xcopy "%a" \bin /i

Para corresponder *.exe como caractere curinga em qualquer subdiretório de nível denominado release_win_64

Usando um arquivo em lotes:

cd \mydir
for /f %%a in ('dir /b /s *.exe ^| findstr "release_win_64"') do xcopy "%%a" \bin /i

Na linha de comando:

cd \mydir
for /f %a in ('dir /b /s *.exe ^| findstr "release_win_64"') do xcopy "%a" \bin /i

Consulte Um índice A-Z da linha de comando do Windows CMD para obter mais informações sobre for e xcopy .

    
por 14.11.2014 / 14:55