我有一个执行以下操作的批处理脚本
@ECHO OFF
REM move files older than 2 days from the incoming directory to the incoming archive directory
robocopy D:\Agentrics\integration\download D:\Agentrics\integration\download\archive /MOV /MINAGE:2
REM Zip files in the Archieve directory that are older than one week
FOR %%A IN (D:\Agentrics\integration\download\archive\*.txt*, D:\Agentrics\integration\download\archive\*.cpi*) DO "C:\Program Files\WinRAR\WinRAR.exe" a -r -to7d D:\Agentrics\integration\download\archive\"%%~nA.zip" "%%A"
REM Delete Original files after they are zipped
forfiles /p D:\Agentrics\integration\download\archive /s /m *.txt* /d -7 /c "cmd /c del /q @path"
forfiles /p D:\Agentrics\integration\download\archive /s /m *.cpi* /d -7 /c "cmd /c del /q @path"
REM Delete files that are older than 6 months from the archive directory
forfiles /p D:\Agentrics\integration\download\archive /s /m *.zip* /d -180 /c "cmd /c del /q @path"
pause
问题 1:当我运行脚本时,我会收到一些文件的 WinRAR 诊断消息。例如,如果传入目录中有不超过两天的文件,我会收到此消息。“WinRAR 诊断消息:没有要添加的文件”。由于此消息,脚本会停止,直到我单击对话框的关闭按钮。我正在使用 WinRAR 的免费版本并且它没有过期
问题 2:我在上面的脚本中有两个单独的命令。一种是压缩一周前的文件,另一种是在压缩后删除原始文件。我如何链接这两个命令,以便如果由于某种原因文件没有被压缩,它们也不应该被删除。或者如果文件没有被压缩,是否有命令来破坏脚本?我只想先压缩文件,然后删除原始文件