crontab 无法从日志文件夹中删除旧文件

crontab 无法从日志文件夹中删除旧文件

我的 crontab 中有此行​​用于删除旧文件:

1 * * * * find /var/log/abc/ -mtime +7 -type f -delete

不幸的是,它不起作用。

我尝试授予所有用户使用以下方法清除该文件夹的权限

chmod +777 /var/log/abc

但 chmod 不起作用。我还能尝试什么?


按照建议记录输出后,我发现日志中的内容如下:

/bin/sh: 1: find: not found

所以我认为我需要正确设置我的路径......

答案1

作为一种良好做法,添加将要执行此 crontab 的用户。

1 *    * * *   root    find /var/log/abc/ -mtime +7 -type f -delete

您是否证明了 find 在 cron 之外正常工作?

尝试手动执行它并看看会发生什么,cron 没有任何问题。

作为第二个好的做法,尝试将 cron 的操作记录到 syslog 中,例如使用 logger:

1 *    * * *   root    find /var/log/abc/ -mtime +7 -type f -delete 2>&1 | logger -t cron_find_delete

2>&1

最后将把 sterr 和 stdout 抛给记录器。

相关内容