在指定的小时每2天运行一次cron作业

时间:2013-10-01 16:17:35

标签: cron crontab

如何在凌晨4:10的指定时间每2天运行一次cronjob

以下表达式是否正确?

10 04 * * */2 MY-COMMAND

2 个答案:

答案 0 :(得分:1)

不,你在一周的几天里都可以被两个人整除。所以你在太阳,周二,周四,周六运行它; Sun,Tue,...(此字段从零开始。)

如果将*/2移动到月份字段(第四个字段),则会出现相同的问题,即月数不均匀且天数不均匀,但异常天数一年只会发生七次(闰年八年)而不是每周。

如果您绝对需要每隔一天运行一次,那么您需要某种外部逻辑。也许让脚本检查一个运行文件,如果它不到25个小时就中止(如果你改变夏令时的系统时间,则可以是26),否则继续并更新运行文件的时间戳。

答案 1 :(得分:0)

如果您查看作业执行日,您可以发现它还取决于您使用的月份(例如)如果您尝试每5天执行一次,那么作业将开始并且它将尝试拆分月份相等的一半(不是),因此它不会按预期工作,请参阅Click Here to check,因此必须使用withIntervalInHours(intervalInHours)来使我们的案例正常工作