【发布时间】:2018-05-15 07:10:46
【问题描述】:
我有一个使用crontab 定期删除旧文件的命令。
命令是:
0 * * * * sudo find /path/to/data/ -type f -mmin +600 -name '*.gz' -execdir rm -- '{}' +;
这有助于我从给定文件夹位置删除所有早于 600 分钟(10 小时)的 .gz 文件。它在命令提示符和 crontab 中完美运行。
现在我修改了上面的命令来删除另一组文件。但是它在命令提示符下有效,但在 crontab 中无效。
0 * * * * sudo find /path/to/data/ -type f -mmin +600 -name '*.gz%%' -execdir rm -- '{}' +;
我的文件扩展名为*.gz%%。文件名已附加%%,如果需要可以更改为其他字符。
该命令如果从命令提示符运行则运行良好,但保存在crontab 中时根本不会执行。
似乎 crontab 无法执行该命令。任何调试指针或命令中的问题是什么?
【问题讨论】: