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. 域
秒域 分域 时域 日域 月域 周域 年域
|域名 |可取值 |可取符号(仅列部分常用)|
|— |— |—|
|秒域 |059的整数 |59的整数 |* - , /
|
|分域 |0* - , /
|
|时域 |023的整数 |31的整数 |* - , /
|
|日域 |1* - , / ? L
|
|月域 |112的整数或JANDEC|* - , /
|
|周域 |17的整数或SUNSAT |* - , / ? 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 |
每月的第三周的星期五开始触发 |
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 wind.kaisa@gmail.com