我目前正在使用此 cron 作业删除特定位置中停滞的临时文件。我该如何改进它以仅删除超过 x 天(例如 30 天)的文件?
0 4 * * 0 /bin/rm -fv /home/*/tmp/Cpanel_*
答案1
您可以使用find
:
find /home/*/tmp/Cpanel_*' -type f \! -newermt "month ago" -delete
find
可能会很棘手,所以请做好功课,阅读相关内容并进行测试。常见的做法是使用不针对找到的目标执行的命令进行测试,例如ls
或echo
。find
有一些内置命令可用于测试。因此,您可以从以下命令开始:
find /home/*/tmp/Cpanel_*' -type f \! -newermt "month ago" -ls