跨越第二天的Cron表达

时间:2015-05-26 08:37:12

标签: cron cronexpression

我的工作要求是:  1.每15分钟一次  2.每天早上8:00到第二天 03:00

因此,工作每隔15分钟从上午08:00到次日凌晨03:00运行。

可以使用cron表达式来实现。

试过这个,但似乎没有帮助。

0 0/15 8-3  * * ?

谢谢, Wajid

1 个答案:

答案 0 :(得分:2)

*/15 0-2,8-23 * * *  test.sh
─┬── ───┬──── ┬ ┬ ┬
 │      │     │ │ │
 │      │     │ │ │
 │      │     │ │ └───── day of week (all)
 │      │     │ └─────── month (all)
 │      │     └───────── day of month (all)
 │      └─────────────── hour (between 0-2 and between 8-23)
 └────────────────────── min (every 15 minutes)

每隔15分钟运行一次,从早上12:00到凌晨02:45,每天早上08:00到23:45。

0-2,8-23相当于0,1,2,8,9,10,...,23,而*/15相当于0,15,30,45

以上不包括03:00,因为最后一次执行将是02:45;如果我们使用0-3而不是0-2,它也会在03:15,30,45处执行。

为了能够包括03:00,(实际上是02:59)我们需要更加冗长:

14,29,44,59 0-2,8-23 * * *  test.sh