我需要为一个目录创建一个备份批处理脚本。它将每 10 分钟更新一次。我希望它只更新已添加到目录或在上次备份后修改的文件。
我尝试使用这个脚本:
@ECHO OFF
SET srcdir=D:\Source
SET tgtdir=D:\Target
SET /A topcnt=3
SET /A cnt=0
FOR /F "tokens=*" %%F IN ('DIR /A-D /OD /TW /B "%srcdir%"') DO (
SET /A cnt+=1
SETLOCAL EnableDelayedExpansion
IF !cnt! GTR !topcnt! (ENDLOCAL & GOTO :EOF)
ENDLOCAL
COPY "%srcdir%\%%F" "%tgtdir%"
)
我遇到的问题是它只适用于批处理文件所在的目录,它将返回最近的三个文件,包括批处理文件本身。此外,复制功能不起作用。该程序未将 srcdir 与文件扩展名连接,因此程序无法确定要复制的文件。请指教。