小编Tom*_*uts的帖子

find -delete 工作正常,但不适用于 cron

请注意我已经阅读了所有类似的问题。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

11
推荐指数
2
解决办法
1万
查看次数

标签 统计

cron ×1