我有一个 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