cron.apt

来自「anewssystem新闻发布系统集成使用了spring hibernate f」· APT 代码 · 共 62 行

APT
62
字号
 ---
 Cron 表达式的写法
 ---
 Lingo
 ---
 2007-04-10

Field Name      Mandatory?      Allowed Values  Allowed Special Characters
Seconds         YES     0-59    , - * /
Minutes         YES     0-59    , - * /
Hours   YES     0-23    , - * /
Day of month    YES     1-31    , - * ? / L W C
Month   YES     1-12 or JAN-DEC         , - * /
Day of week     YES     1-7 or SUN-SAT  , - * ? / L C #
Year    NO      empty, 1970-2099        , - * /

,:表示几个值的列表。如:1,2,3,4表示取值为1,2,3,4.

-   :表示范围,3-5.
*   :表示任意可能值。
?:表示day of month和dya of week只能设置一个,因为放置冲突。
#  :表示每个月的第几个星期里面的一天。
L :表示最后,一个月的最后一天,或者是最后一个星期的一天。

项目实例:
              second  minute  hours  dayOfMonth  month  dayOfWeek  year
每月         0            0           6              ?                    *                6#3            ?
每周        59           59         18            ?                    *                1                ?
自定义    28          47          9             30                 7                ?             2006

每月:每个月的第三个星期五的上午6:00:00 触发
每周:每周的星期日的下午18:59:59 触发
自定义:2006年7月30日上午9:47:28 触发


所有星号对应的段位置,都可以出现后面的符号(, - * /)
(? / L C)这些符号可以出现在"一月哪天"和"星期"段位置
(w)只能出现在"一月哪天"段位置
(#)只能出现在"星期"段位置

解释符号代表的意思:
* 代表任意合法的字段
0 * 17 * * ? :表示在每天的5 PM 到 5:59之间的每一分钟启动scheduler

? 表示没值被指定
如果同时指定"一月哪天"和"星期",可能两者对应不起来
0 0,15,30,45 * * * ? :表示每刻钟启动scheduler
所以推荐用法是其中一个指定值,另一个用?指定

/ 表示时间的增量
0 0/15 * * * ? :表示每刻钟启动scheduler

- 表示值的范围
0 45 3-8 ? * *

L 如果用在"一月哪天"段上,表示一个月的最后一天;如果用在"星期"段上。表示一个星期的最后一天(星期六)
0 0 8 L * ? :表示每个月最后一天的8点启动scheduler

W 表示最靠近给定时间的一天,(必须是星期一到星期五)

# 例如 6#3表示一个月的第三个星期五

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?