Como usar dir e copy juntos para pesquisar diretórios e copiar para uma pasta?

Como usar dir e copy juntos para pesquisar diretórios e copiar para uma pasta?

Preciso pesquisar arquivos em uma pasta especificada e seus subdiretórios e copiá-los para uma pasta especificada em outro lugar. É possível usar dire copycom cano?

dir /s foo???.txt | copy g:\someplace

O acima não funciona. O lado esquerdo do tubo encontra o que desejo, mas não consigo copiar os arquivos encontrados. Estou usando o prompt de comando do Windows 7.

Responder1

Você poderia simplesmente usar xcopy:

xcopy /s foo???.txt g:\someplace

Isso manterá a estrutura de diretórios.

Se você não quiser a estrutura de diretórios, poderá fazer o seguinte:

for /r %i in (foo???.txt) do xcopy /Y "%i" g:\someplace

Se você estiver usando isso em um arquivo em lote, você deve dobrar %assim:

for /r %%i in (foo???.txt) do xcopy /Y "%%i" g:\someplace

Responder2

com o Powershell você pode executar isto:

cmd.exe /c dir *.txt /s /b | copy -Destination d:\md

parte cmd.exe parte Powershell um pouco mais compreensível, mas há sobreposição

informação relacionada