cron表达式 - Fri, Jul 3, 2020
cron表达式
1. 概述
计划任务,可以在约定的时间(配置文件)定时执行任务。
2. 符号
| 符号 | 说明 | 示例 |
|---|---|---|
逗号(,) |
列举 | 1,3,4,7 * * * * echo hello world表示,在每小时的1、3、4、7分时,打印"hello world" |
连词符(-) |
范围 | 1-6 * * * * echo hello world表示,每小时的1到6分钟内,每分钟都会打印"hello world"。 |
星号(*) |
任何可能的值 | 1,3,4,7 * * * * echo hello world表示,在每小时的1、3、4、7分时,打印"hello world" |
百分号(%) |
每 |
*%10 * * * * echo hello world表示,每10分钟打印一回"hello world" |
问号(?) |
任何可能的值 | 13 13 15 20 * ? echo hello world表示,每月20号15点13分13秒打印一回"hello world" |
斜杠(/) |
起始时间 | 0 0 3/5 * * ? echo hello world表示,每天3点开始执行,每隔5个小时执行一次,即3点、8点、13点、18点、23点打印一回"hello world" |
井号(#) |
第几周 | 0 0 0 ? * 5#2 echo hello world表示,每个月第2个周四零点打印一回"hello world" |
L(L) |
当月最后一天或周六 | 0 0 23 L * ? echo hello world表示,每月最后一天的23点打印一回"hello world" |
3. 域
秒域 分域 时域 日域 月域 周域 年域
| 域名 | 可取值 | 可取符号(仅列部分常用) |
|---|---|---|
| 秒域 | 0~59的整数 | * - , / |
| 分域 | 0~59的整数 | * - , / |
| 时域 | 0~23的整数 | * - , / |
| 日域 | 1~31的整数 | * - , / ? L |
| 月域 | 1~12的整数或JAN~DEC | * - , / |
| 周域 | 1~7的整数或SUN~SAT | * - , / ? L # |
| 年域 | 1970~2099的整数 | * - , / |
4. 示例
| 表达式 | 说明 |
|---|---|
0 15 10 * * ? * |
每天10点15分触发 |
0 15 10 * * ? 2017 |
2017年每天10点15分触发 |
0 * 14 * * ? |
每天下午的 2点到2点59分每分触发 |
0 0/5 14 * * ? |
每天下午的 2点到2点59分(整点开始,每隔5分触发) |
0 0/5 14,18 * * ? |
每天下午的 2点到2点59分、18点到18点59分(整点开始,每隔5分触发) |
0 0-5 14 * * ? |
每天下午的 2点到2点05分每分触发 |
0 15 10 ? * 6L |
每月最后一周的星期五的10点15分触发 |
0 15 10 ? * 6#3 |
每月的第三周的星期五开始触发 |