如何设置从下午到午夜每3小时运行一次的cron作业?

时间:2015-12-18 20:25:06

标签: cron aws-lambda

我需要创建一个从下午12点到12点每3小时运行一次的cron作业,所以它将在下午12点到下午3点,下午9点和12点运行。 我在AWS Lambda上运行了一个cron脚本,它们有6个字段用于计算时间。 我认为它应该是:

0 */3 * * * *

但我知道这是错的,无法解决。 我怎么能这样做?

我已经尝试了

0 0,12,15,18,21  * * *

但我收到此错误:http://screencast.com/t/7tH2wnseyc

  

创建事件源映射时出错:参数ScheduleExpression无效。

4 个答案:

答案 0 :(得分:4)

根据https://en.wikipedia.org/wiki/Cron,您可以使用逗号为给定字段创建列表,以便类似的工作

0 0,12,15,18,21  * * *

这将在12小时,3小时,6小时,9小时和午夜时分运行。如果Cron格式需要一年,那么添加另一个*

0 0,12,15,18,21  * * * *

答案 1 :(得分:1)

基于http://docs.aws.amazon.com/lambda/latest/dg/with-scheduled-events.html

cron(0 0/3 * * * *)

应该这样做。

答案 2 :(得分:0)

使用以下

0 0,12,15,18,21 * * * /path/command  

cron在每天00:00,12:00,15:00,18:00,21:00运行。

答案 3 :(得分:0)

AWS Cloudwatch Events当前需要在星期几或月几中添加一个问号。这是我用来完成任务的cron表达式:

0 12,15,18,21,0 * * ? *

在Cloudwatch Events中,您现在可以判断自己是否走对了,因为它在表达式下方显示触发日期

cron expression