我需要批处理脚本将所有文件从一个目录复制到另一个目录,并将它们全部重命名为默认名称(例如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
答案 0 :(得分:0)
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
SET "sourcedir=U:\sourcedir"
SET "destdir=U:\destdir"
SET /a count=0
for %%c in (%sourcedir%\*.*) do (
CALL :select
ECHO copy "%%c" "%destdir%\NAME!count!.pdf"
)
GOTO :EOF
:select
SET /a count+=1
IF EXIST "%destdir%\NAME%count%.pdf" GOTO select
GOTO :eof
我已经设置了不同的源和目标目录。您需要更改这些名称以适合您的具体情况。
我已选择简单ECHO
所需的copy
命令,以便您可以查看生成的命令。您需要将ECHO copy
更改为copy
才能实际执行命令。
如果您将>nul
附加到copy
命令,1 file(s) copied
响应将被取消。