apscheduler的cron配置项
字段
字段 | 意义 | 示意值/部分可选值范围/部分可用值 |
---|---|---|
year | 年 | 2024 |
month | 月 | 1-12 |
day | 日 | 1-31 |
week | 周 | 1-53 |
day_of_week | 周几 | 0-6 或 mon,tue,wed,thu,fri,sat,sun |
hour | 时 | 0-23 |
minute | 分 | 0-59 |
second | 秒 | 0-59 |
start_date | 开始日期 | 2024-01-01 |
end_date | 结束日期 | 2024-12-31 |
通常来讲,如需使用
week
/day_of_week
,就应保持month
/day
为空,反之亦然;
year
>month
>day
>hour
>minute
>second
或year
>week
>day_of_week
>hour
>minute
>second
通常来讲,如果上边的某一项有值,则其前默认为*
,其后默认为起始值(0
或1
)。
例如hour
为2
,其余为空,表示*
年*
月*
日2
时0
分0
秒,即每天2点调用。
表达式
每个字段(不包括start_date
与end_date
)除了可以填入上边的示意值外,还可以使用表达式,如下:
表达式 | 适用字段 | 意义 |
---|---|---|
* |
所有 | 每个值都触发 |
*/a |
所有 | 每隔a 触发一次 |
a-b |
所有 | 在a -b 的区间每个值都触发(a <b ) |
a-b/c |
所有 | 在a -b 的区间每隔c 触发 |
xth y |
day |
第x 个星期y 触发 |
last y |
day |
最后一个星期y 触发 |
last |
day |
一个月的最后一天触发 |
x,y,z |
所有 | 可以组合上边的表达式 |
示例
每天凌晨2点执行
- hour: 2
每两小时执行一次
- hour: */2
每5分钟运行一次
- minute: */5
每个月最后一天凌晨0点运行
- day: last
1-2,4,6-9月 第三个星期一的01:00,02:00,03:00执行
month: 1-2,4,6-9
day: 3rd mon
hour: 1-3
每周一到周五凌晨1点半运行,直到2030-01-01
day_of_week: mon-fri
hour: 1
minute: 30
end_date: 2030-01-01
apscheduler的cron配置项
https://blog.ctftools.com/2024/08/newpost-58/