crontab 文件中“+”的含义是什么以及它为什么起作用?

crontab 文件中“+”的含义是什么以及它为什么起作用?

我在某些 Ubuntu 服务器上发现了这个 cron 命令/etc/cron.d/ 0 */3+2 * * * root <command goes here>

通过添加以下文件,在我的 PC 上尝试了 Ubuntu 14.04.3 LTS:/etc/cron.d/test */3+2 * * * * root echo 'Cron test' 这是 cron 日志: Oct 20 03:51:01 artem-notebook CRON[17427]: (root) CMD (echo 'Cron test') Oct 20 03:54:01 artem-notebook CRON[17595]: (root) CMD (echo 'Cron test') Oct 20 03:57:01 artem-notebook CRON[17662]: (root) CMD (echo 'Cron test') Oct 20 04:00:01 artem-notebook CRON[17728]: (root) CMD (echo 'Cron test')

所以看起来它以某种方式起作用了,对吗?

这个“+”是什么意思?有关于此功能的任何文档吗?

答案1

cron不支持字段内的任何算术。破折号表示范围(9-12= 9,10,11,12),斜线表示“每个第 N 个”。看起来解析器只是忽略了从未解析的字符到末尾的所有内容。因此*/3+2相当于*/3这反过来又相当于0,3,6,9,12,15...48,51,54,57- 正是您在日志中所拥有的。

相关内容