cron表达式

  1. 1. 概述
  2. 2. 符号
  3. 3. 域
  4. 4. 示例

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的整数 |* - , /|
|分域 |0
59的整数 |* - , /|
|时域 |023的整数 |* - , /|
|日域 |1
31的整数 |* - , / ? 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

💰

×

Help us with donation