Batch file 用于复制和重命名文件的批处理脚本

Batch file 用于复制和重命名文件的批处理脚本,batch-file,batch-rename,Batch File,Batch Rename,我需要批处理脚本将所有文件从一个目录复制到另一个目录,并将它们全部重命名为默认名称(例如NAME54.pdf),然后继续从目标名称中的最大数量开始计数。 我写了一些脚本,但似乎不起作用: @echo on D: set count=0 for %%a in (scans1\*.*) do ( set /a count+=1 ) set count1=0 for %%b in (scans\*.*) do ( set /a count1+=1 ) for /l %%c in (1,1,%co

我需要批处理脚本将所有文件从一个目录复制到另一个目录,并将它们全部重命名为默认名称(例如NAME54.pdf),然后继续从目标名称中的最大数量开始计数。 我写了一些脚本,但似乎不起作用:

@echo on
D:

set count=0
for %%a in (scans1\*.*) do (
set /a count+=1
)

set count1=0
for %%b in (scans\*.*) do (
set /a count1+=1
)

for /l %%c in (1,1,%count1%) do (
set /a count+=1
copy D:\scans\*.* D:\scans\NAME%count%.pdf
)

pause
@ECHO关闭
SETLOCAL ENABLEDELAYEDEXPANSION
设置“sourcedir=U:\sourcedir”
设置“destdir=U:\destdir”
设置/a计数=0
对于(%sourcedir%\*.*)中的%%c,请执行以下操作(
呼叫:选择
回显副本“%%c”“%destdir%\NAME!count!.pdf”
)
后藤:EOF
:选择
设置/a计数+=1
如果存在“%destdir%\NAME%count%.pdf”转到选择
后藤:eof
我已经设置了不同的源目录和目标目录。您需要更改这些名称以适应您的情况

我选择了简单地
ECHO
所需的
copy
命令,以便您可以看到生成的命令。您需要将
ECHO copy
更改为
copy
,以实际执行命令


如果将
>nul
附加到
copy
命令,复制的
1个文件
响应将被抑制。

Thans@Magoo这很有效。我还有一个问题。无论如何,如果您可以让它只复制在脚本运行日期创建的文件,那将非常有用。