cron任务解释

cron本来是在linux下的一个定时任务执行工具,现在很多语言都支持cron,本文参考https://en.wikipedia.org/wiki/Cron,解释一下cron配置。

概述

cron配置有五个部分,分别代表分钟,小时,天,月,周,如下。

 ┌───────────── 分钟(0 - 59)
 │ ┌───────────── 小时(0 - 23)
 │ │ ┌───────────── 天 (1 - 31)
 │ │ │ ┌───────────── 月 (1 - 12)
 │ │ │ │ ┌───────────── 周几 (0 - 6) (周日到周一,有的系统里面7表示周日)
 │ │ │ │ │                                    
 │ │ │ │ │
 │ │ │ │ │
 * * * * *  

cron表达式

字段 包含的值 包含的特殊字符 备注
分钟 0-59 * , -
小时 0-23 * , - ? L W ? L W只在某一些领域有效
1-31 * , -
1-12或者JAN-DEC * , - ? L #
0-6或者SUN-SAT * , - ? L W只在某一些领域有效

说明:
月和周的英文不区分大小写

*星号

表示任一值

, 逗号

表示多个值,比如1,2,3,

- 连字符

表示连续多个值,比如1-3表示1,2,3

/斜线

表示整除,比如在分钟字段的*/5表示每5分钟,0 5 10 15 20 25 30 35 40 45 50 55

L

表示最后(last),比如在周那个字段的5L表示某一个月的最后一个周五。

另外还有W # ? H 不常用,就不解释了。

例子

下面列举一些常用的cron表达式。

每小时

0 * * * *

每2小时

0 */2 * * *

每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点

0 11 4 * mon-wed

每天的下午1点从1分到50分的每分钟

1-50 13 * * *

每天的早上8点到下午3点,每隔两个小时

0 8-15/2 * * *

posted @ 2017-12-20 14:03  wardensky  阅读(1298)  评论(0编辑  收藏  举报