cron表达式 说明
时间: 2023-11-04 11:54:23 浏览: 169
cron表达式是一种用于指定定时任务执行时间的格式字符串。它由6个字段组成,分别表示分钟、小时、天、月、周几和年份。每个字段可以是一个具体的数值、一系列数值、一个通配符或者一个范围。
以下是cron表达式的各字段含义:
1. 分钟 (0 - 59)
2. 小时 (0 - 23)
3. 天 (1 - 31)
4. 月 (1 - 12)
5. 周几 (0 - 7,其中0和7都表示星期日)
6. 年份 (可选,1970 - 2099)
字段之间使用空格或者制表符分隔,每个字段可以使用以下一些特殊字符:
- `*`:匹配任意值
- `*/n`:表示每隔n单位执行一次,例如`*/5`表示每隔5分钟执行一次
- `,`:用于指定多个数值,例如`1,3,5`表示第1、3、5个数值
- `-`:用于指定范围,例如`10-15`表示从第10到第15个数值
下面是一些示例cron表达式:
- `0 * * * *`:每小时的0分钟执行一次
- `0 0 * * *`:每天的0点整执行一次
- `0 0 1 * *`:每月的1号的0点整执行一次
- `0 0 */2 * *`:每隔两天的0点整执行一次
相关问题
cron表达式举例说明
Cron表达式是一种用于表示定期执行任务的语法格式,通常用于计划任务或定时任务的设置。
Cron表达式由6个字段组成,分别表示秒、分、时、日、月、周几。每个字段都可以是一个数字或一个通配符(*),也可以是一个列表或范围(例如1,2,3或1-5)。
以下是一些Cron表达式的示例:
1. 每小时执行一次:0 * * * * ?
2. 每天上午10点执行一次:0 0 10 * * ?
3. 每周一、周三、周五下午2点执行一次:0 0 14 ? * MON,WED,FRI
4. 每月的1号和15号晚上8点执行一次:0 0 20 1,15 * ?
5. 每个工作日上午9点到下午5点每隔30分钟执行一次:0 0/30 9-17 ? * MON-FRI
这些示例只是Cron表达式的一部分,还有很多其他的写法和用法。需要注意的是,Cron表达式的写法有时会因为不同的实现而略有不同,所以在具体使用时需要查看所使用的工具或系统的文档。
airflow cron表达式
Airflow的cron表达式用于定义任务的调度时间,它与Unix/Linux系统的cron表达式类似,但有一些差异。Airflow中的cron表达式包括六或七个空格分隔的字段,分别代表以下含义:
1. 分钟(0 - 59)
2. 小时(0 - 23)
3. 月份中的日期(1 - 31)
4. 月份(1 - 12)
5. 星期中的日期(1 - 7,其中1和7都代表星期天)
6. 年份(可选字段,如果不提供则默认为 '*')
7. 月份中的星期(可选字段,表示每个月中指定星期几,1 - 5 表示星期一到星期五,范围外的数字会被忽略)
这里举几个例子来说明Airflow的cron表达式:
- 每天凌晨1点执行任务:`0 1 * * *`
- 每个工作日(星期一至星期五)的上午9点30分执行任务:`30 9 * * 1-5`
- 每个月的第一个星期天的10点15分执行任务:`15 10 1 1-12 1`
- 每年1月1日的零点执行任务:`0 0 1 1 *`
请注意,Airflow的cron表达式中有一些特殊符号可以使用,例如:
- `*`(星号):表示每个单位时间,比如每个月每天都用`*`。
- `,`(逗号):表示列出几个范围,比如每周的星期一和星期三可以表示为`1,3`。
- `-`(短横线):表示范围,比如月份中的日期可以从1号到15号表示为`1-15`。
- `L`(字母L):表示“最后”,比如月份中的日期可以使用`L`表示最后一天,星期几可以使用`L`表示月份中的最后一个星期几。
- `W`(字母W):表示工作日,用于指定最接近指定日期的工作日,例如`15W`表示月份中的第15个工作日。
这些特殊符号可以组合使用来定义复杂的调度规则。
阅读全文