【发布时间】:2014-07-01 06:15:07
【问题描述】:
我想使用 cronjob 删除 x 天前的 .tar 和 .sql 文件。
我尝试了多个命令,但都不起作用。
命令,例如,
find /path/to/files -type f -mtime +10 -delete
find /path/to/folder -name '*.sql' -mtime +30 -delete
find "$FILEDIR" -mtime +14 -delete
[[ $FILEDIR == /home/abc/* ]] && find "$FILEDIR" -mtime +14 -delete
以上命令运行完美,但不会删除任何内容。 需要帮助。
【问题讨论】:
-
第一个应该可以: find /path/to/files -type f -mtime +10 -delete 如果没有,你确定对所有文件都有写权限和执行权限吗?正在执行 cron 的用户的相关文件的父目录?你有 cron 输出吗?
-
我使用 cron 在同一目录中创建了
.tar文件。所以写访问是存在的。 -
这是同一个目录,但您是否尝试过自己删除实际文件?添加到您的 cron "> /your/log/file.log 2>&1" 以查看打印的错误。还将 -print 添加到您的 find 命令中,以使其打印找到的所有匹配项并查看您的日志以进行分析。不过,您的命令本身应该是正确的。