crontab:时间字段规范中破折号字符的特殊情况

crontab:时间字段规范中破折号字符的特殊情况

在 SuSE 中,/etc/crontab运行脚本的条目cron.{hourly,daily,monthly,weekly}编码为:

-*/15 * * * *   root  test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1

请注意,规范的第一个字符是破折号 (-),这不是拼写错误。

有人能解释一下时间规范的-*/15含义吗?

顺便说一句,一切似乎运行良好。

答案1

crontab 文件的手册页中说明了以下内容(man 5 crontab):

如果所有者的 uid 为 0(root),他可以将“-”作为 crontab 条目的第一个字符。这将阻止 cron 写入有关此命令执行的系统日志消息。

答案2

我想说的是,这似乎是 SuSE 特有的用例。其他几个系统上的 Vixie Cron(我测试了 redhat、debian、gentoo 和 FreeBSD)不支持这种特殊用例。前导破折号 silenty 不会阻止 cronjob 生成系统日志消息,而是会禁用整个作业,因此使用时要小心!

相关内容