【发布时间】:2018-08-31 13:35:32
【问题描述】:
通过网络路径,每天都会添加两个巨大的文件夹,命名格式为 BKP_YYYYMMDDhhmm 。当我们尝试手动删除这些文件夹进行管理时,它会抛出众所周知的错误:
SOURCE PATH TOO LONG
所以我创建了下面的管家批处理,以使用 ROBOCOPY 路由一次选择最旧的文件夹作为输入来删除那些顽固的文件夹。
我已安排此批处理每 3 分钟运行一次,并且运行良好。但我希望这批只删除那些超过 4 个月的文件夹。
我找到了许多解决方案来实现这一点,但由于上述所有文件夹都发生“SOURCE PATH TOO LONG”错误,因此无法离开此 ROBOCOPY 路线。
您能否指导我在下面的脚本中需要进行哪些修改,以便可以安排它在一天中的固定时间运行以仅删除超过 4 个月的文件夹?
提前致谢!
@echo off
pushd \\networkpath\backupdirectory
for /f "delims=" %%a in ('dir "BKP_*" /a:d /o:-d /b') do set "folder=%%a"
echo %folder% >> D:\data\logs\Log.txt
rmdir emptyfolder
mkdir emptyfolder
robocopy emptyfolder "%folder%" /purge
rmdir %folder%
rmdir emptyfolder
exit
【问题讨论】:
-
在删除前四个月内内容未修改的目录时,我认为没有理由每三分钟甚至每天运行一次脚本!
标签: batch-file window batch-processing delete-file robocopy