FOR /R %%G IN (.) DO COPY %%G %NEWFOLDER%
Gostaria de usar xcopy
em uma máquina Windows para extrair todos os arquivos com extensão .doc
em um único diretório.
Um exemplo:
Eu preciso copiar o arquivo .doc
da fonte abaixo:
D:\new folder\new1\new1-1\new\y.doc
D:\new folder\new2\new2-1\new\y.doc
D:\new folder\new3\new3-1\new\y.doc
D:\new folder\new4\new4-1\new\y.doc
D:\new folder\new5\new5-1\new\y.doc
:
:
:
e cole-os em D:\test\
conforme abaixo:
y1.doc
y2.doc
y3.doc
y4.doc
y5.doc
:
:
:
e evite a substituição dos arquivos .doc
.
FOR /R %%G IN (.) DO COPY %%G %NEWFOLDER%
@echo off & setlocal
for /s "D:\new folder" %%f in (*.doc) do call :nextfile "%%~f"
goto :eof
:nextfile
set /a num+=1
set "target=D:\test\%~n1%num%%~x1"
if exist "%target%" goto :nextfile
copy "%~1" "%target%"
goto :eof
for /L %a in (1,1,50) do XCOPY "D:\new folder\new%a\new%a-1\y.doc" D:\test\y%a.doc
substitua "50" por qualquer que seja o número da sua pasta final.