Cron 作业删除特定文件夹中所有超过 7 天且带有扩展名的文件 - 不起作用

Cron 作业删除特定文件夹中所有超过 7 天且带有扩展名的文件 - 不起作用

我有一个 cron 作业,在午夜运行,以删除文件夹中超过 7 天的所有 .txt 文件。我可以看到该作业正在运行,但文件仍然存在于文件夹中。

我是 cron 的新手,所以我真的很感激有人指出我哪里出了问题,或者如果不明显的话如何诊断。

以下是我隐藏了目录的代码:

0 0 * * * bin/find /var/www/example.com/wp-content/targetdir -name "*.txt" -type f -mtime +7 -exec rm -rf {} \;

提前感谢大家。

答案1

  • 只需使用“find”或使用以 / 开头的绝对路径(对于 ubuntu 来说是 /usr/bin/find)
  • 如果你想删除文件,请不要使用“rm -r”

这个很好用:

0 0 * * * /usr/bin/find /var/www/example.com/wp-content/targetdir -name "*.txt" -type f -mtime +7 -exec rm -f {} \;

答案2

或者更简单:0 0 * * * /usr/bin/find /var/www/example.com/wp-content/targetdir -name "*.txt" -type f -mtime +7 -delete

解释:man find,ACTIONS -delete

相关内容