cron表达式是由若干数字、空格、符号按一定的规则,组成一组字符串,从而表达时间的信息。
与正则表达式类似,都是一个字符串表示一些信息
cron.jpg

cron表达式标准结构

cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义。
cron从左到右(用空格隔开
1秒 2分 3小时 4月份中的日期 5月份 6星期中的日期 7年份
image.png
image.png

语法说明

cron表达式对日期英文缩写、特殊字符大小写不敏感
cron表达式共 7 位,最后一位可选,可以不写,至少 6 位,从左到右各位置分别是

位置 意义 取值 支持的符号
1 0-59 , - * /
2 0-59 , - * /
3 0-23 , - * /
4 1-31 , - * ? / L W C
5 1-12 或 JAN - DEC , - * /
6 1-7 或 MON - SAT , - * ? / L C #
7 空或 1970-2099 , - * /

符号说明

符号 名称 功能
* 星号 表示重复对应位置上的周期,比如在第四位上表示每日
, 逗号 代表一个列表值,表示多个指定时间,如周位上SAT,SUN表示每周六周日
? 问号 无意义,占位符,只能在日、周位上
- 减号 表示一个范围,如时位上 20-22表示 20、21、22点
/ 斜杠 a/b 可以表示以 a 为起点步长为 b 的时间序列,如日位上10/10表示10日20日30日
L Last 月份最后一天或星期六,周位上 6L 表示月份的最后一个周五
W Weekday 后边最近的工作日,3W 3日如是周五,则在6日(周一)执行
# 井号 a#b 表示当月第 b 个星期 a,如 6#1 当月第一个星期五
C Calendar 关联的“日历”的计算结果