请注意:我已经阅读了所有类似的问题。cron、paths、env 变量等等,但没有发现可以为我的特定问题提供解决方案。
我有一个脚本可以进行一些 MySQL 转储,然后像这样删除旧的:
/usr/bin/find "/home/bkp/dbdump" -name "*.gz" -mtime +5 -delete
Run Code Online (Sandbox Code Playgroud)
(以上命令已根据评论中的建议从我的原始命令中修改)
但是,当 cron 运行此脚本时,这些文件永远不会被删除。cron 用户是 root。
调试注意事项
如果我手动运行出现命令的脚本,它会按预期删除它们。
如果我以 root 身份从命令行单独运行上述 find 命令,它会按预期删除它们(并且使用 -print 它会按预期返回超过 5 天的文件列表)
我还向 root 的 crontab 添加了显式路径语句,但这
不会改变任何内容。
Cron 不会发送任何错误,如果我将查找操作通过管道传输到日志文件,
则会显示为空或根本没有创建。
我正在使用 Ubuntu 服务器 14.04.03 LTS。
cron ×1