在.bat文件中复制后,在文件名中添加增量编号

时间:2019-02-14 16:52:16

标签: batch-file

我正在尝试创建一个.bat文件,该文件将在三个单独的文件夹中复制所有以“ XX”结尾的文件。我希望将它们全部放在一个文件夹中,但要在名称的末尾添加一个递增的数字(这样就不会有重复的文件名)。在阅读完原始问题的答案后,我再次写了它。但是它仍然不能复制所有内容,因为它会得到重复的文件名。

:: The setlocal line should put before the for loop:
setlocal EnableDelayedExpansion

set _a=0

for /D %%D in ("R:\SQL QUERIES\Mark\text append testing\*") do (

::Same as set /a _a=_a+1
SET /A _a+=1
echo !_a!

xcopy /Y /S "%%~D\*XX*" "R:\SQL QUERIES\Mark\conversion_scripts"

ren "R:\SQL QUERIES\Mark\conversion_scripts\*XX*" *!_a!
)
pause

1 个答案:

答案 0 :(得分:0)

这有效:

:: The setlocal line should put before the for loop:
setlocal EnableDelayedExpansion

set _a=0

for /D %%D in ("R:\SQL QUERIES\Mark\text append testing\*") do (

::Same as set /a _a=_a+1
SET /A _a+=1
echo !_a!

xcopy /Y /S "%%~D\*XX*" "R:\SQL QUERIES\Mark\conversion_scripts"

ren "R:\SQL QUERIES\Mark\conversion_scripts\*XX" *X!_a!
)