Cron表达

时间:2012-09-05 04:07:53

标签: cron

我将如何编写一个Cron表达式,以便在每天上午8点和下午3:30触发? 我知道如何创建一个表达式,每天触发一次,而不是在多个设定时间。 提前致谢

3 个答案:

答案 0 :(得分:4)

你应该使用两行。

0 8 * * * command
30 15 * * * command

当然,在典型的/etc/cron.d格式中,将用户包含为arg 6.表达式表示法(在我所知的所有版本中)将为您提供除您想要的之外的其他内容(例如,表达式本质上是附加的,所以它会跑得比你想要的多。)

答案 1 :(得分:1)

轻松一点,使用一次制作的组件 - 例如。 Crontab generator:o)

答案 2 :(得分:1)

以防您以后需要使用Java语言创建Cron表达式, 这是一个可用于语音编码风格的API

https://github.com/mabidshafiq/VerbalCronExpression

您的方案的示例是,

String exp = ce.cronExp()
    .minuteOfHour("0")
    .hourOfDay("8")
    .everyDay()
    .everyMonth()
    .generate();

它将生成0 8 * * *

并且为了您的理解

* * * * * *
| | | | | | 
| | | | | +-- Year              (range: 1900-3000)
| | | | +---- Day of the Week   (range: 1-7, 1 standing for Monday)
| | | +------ Month of the Year (range: 1-12)
| | +-------- Day of the Month  (range: 1-31)
| +---------- Hour              (range: 0-23)
+------------ Minute            (range: 0-59)