批处理脚本将文件从一个文件夹复制到另一个文件夹,并为文件名添加前缀

时间:2015-06-23 15:07:37

标签: batch-file command-line scripting

我想将包含特定字符串的所有文件复制到另一个文件夹,然后在文件名中添加前缀(特定字符串)。如果我在具有相同文件的文件夹上再次运行脚本,则应替换为现有文件。

我使用了以下代码:

Y:cd source
copy *place*.TXT Y:\destination
cd Y:\destination
FOR /f "delims=" %%F IN ('DIR /a-d /b Traditional*')  DO (RENAME "%%F" "south.%%F")

例如:在源

file1: traditional.place.monday.txt
file2: traditional.mountain.monday.txt

它应该将file1复制到目标文件夹,然后将Prefix向南添加到

在目标文件夹中:

file1: south.traditional.place.monday.txt

当我在正确添加前缀后运行脚本时。如果我跑了两次,它会复制文件,但如果文件存在,它应该替换文件。

file1: south.traditional.place.monday.txt
file2: traditional.place.monday.txt

我该怎么做,请对脚本发表评论,以便我能理解。

1 个答案:

答案 0 :(得分:0)

它无法在第二次传递时重命名,因为该文件已存在。

将重命名块更改为:

(DEL "south.%%F"
REANME "%%F "south.%%F")