我想xcopy
在 Windows 机器上将所有带扩展名的文件拉到.doc
一个目录中。
一个例子:
我需要.doc
从以下来源复制文件:
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
:
:
:
并将其粘贴D:\test\
如下:
y1.doc
y2.doc
y3.doc
y4.doc
y5.doc
:
:
:
并避免替换文件.doc
。
答案1
FOR /R %%G IN (.) DO COPY %%G %NEWFOLDER%
答案2
@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
答案3
for /L %a in (1,1,50) do XCOPY "D:\new folder\new%a\new%a-1\y.doc" D:\test\y%a.doc
将“50”替换为您的最终文件夹编号。