3

我想从子目录复制一种文件类型,将副本放入一个文件夹,重命名它们,以免它们被覆盖。重命名它但保留文件扩展名。我不在乎它被重命名为什么,只要每个副本都有一个唯一的名称,这样它们就不会被覆盖。

这是我现在的代码。它做了我想做的一切,除了它覆盖同名的文件:

代码:

set dSource=C:\Users\P Ditty\Documents\SH3\data\cfg\Careers
set dTarget=C:\Users\P Ditty\Documents\SH3\data\cfg\Backups_SCR
set fType=*.clg
for /f "delims=" %%f in ('dir /a-d /b /s "%dSource%\%fType%"') do (
copy  /v "%%f" "%dTarget%\" 2>nul
)

谢谢你。

4

1 回答 1

1

通过保留原始目录结构来避免重复问题:

set dSource=C:\Users\P Ditty\Documents\SH3\data\cfg\Careers
set dTarget=C:\Users\P Ditty\Documents\SH3\data\cfg\Backups_SCR
set fType=*.clg

xcopy/s/i "%dSource%\%fType%" "%dTarget%"
于 2013-02-22T22:09:15.590 回答