使用 forfiles 从不同目录中删除超过 X 天的文件

使用 forfiles 从不同目录中删除超过 X 天的文件

我想创建一个批处理文件,删除来自不同目录(100 多个不同目录)超过 1 天的文件(仅文件,而不是文件夹或子文件夹),并让该批处理每天在任务计划程序上运行。

我已经找到了这个脚本,但需要对其进行调整以删除多个目录中的文件...请问如何实现这一点?或者这个批处理是否可以在不同的目录中工作?

@echo off
:: set folder path
set dump_path=c:\shares\dump

:: set min age of files to delete
set max_days=1

:: remove files from %dump_path%
forfiles -p %dump_path% -m *.* -d -%max_days% -c "cmd  /c del /q @path"

:: remove sub directories from %dump_path%
forfiles -p %dump_path% -d -%max_days% -c "cmd /c IF @isdir == TRUE rd /S /Q @path"

答案1

我想您需要添加一个foreach-object“循环”,您可以在其中在文本文件或数组中添加要清理的文件夹列表,然后运行foreach-object其他代码。

更多信息foreach 对象

相关内容