首页 > 其他分享 >cron表达式

cron表达式

时间:2022-12-16 21:22:07浏览次数:47  
标签:表示 触发 一次 15 10 cron 表达式

1. 什么是cron表达式

cron表达式说白了就是一串由若干数字、空格、符号按照一定的规则组成的一组字符串,这个字符串能用来表达时间信息。

2. cron表达式的结构

cron表达式从左到右分为七个域,这七个域之间以空格隔开,从左到右分别代表的值为:
秒 分 时 日 月 周 年(可以不写)

3. cron表达式每个域的取值范围及说明

字段 允许值
0-59, ',', '-', '*', '/'
0-59, ',', '-', '*', '/'
0-23, ',', '-', '*', '/'
1-31, ',', '-', '*', '/', '?', 'L', 'W', 'C'
1-12, JAN-DEC, ',', '-', '*', '/'
1-7, SUN-SAT, ',', '-', '*', '/', '?', 'L', 'C', '#'
空, 1970-2099,',', '-', '*', '/'
  • 3.1 秒
    0-59:秒域的值,表示在第多少秒的时候触发,如10表示在第十秒的时候触发
    :用来分隔值的符号,可以让秒域有多个值,如5,10,15表示分别在第5秒,第10秒,第15秒的时候触发。
    -:表示一个范围值,在指定范围内触发,如0-5表示在第0秒到第5秒,每秒触发一次
    *:这个表示每秒进行触发一次
    /:这个表示步进触发,/前面的值表示触发的开始时间,后面的值表示偏移量,如5/10这个的意思表示从第5秒开始,每10秒触发一次,也就是在第5秒,15秒,25秒,35秒,45秒,55秒分别触发一次。
  • 3.2 分
    0-59:分域的值,表示在第多少分钟的时候触发,如10表示在第十分钟的时候触发
    :用来分隔值的符号,可以让分域有多个值,如5,10,15表示分别在第5分钟,第10分钟,第15分钟的时候触发。
    -:表示一个范围值,在指定范围内触发,如0-5表示在第0分钟到第5分钟,每分钟触发一次
    *:这个表示每分钟进行触发一次
    /:这个表示步进触发,/前面的值表示触发的开始时间,后面的值表示偏移量,如5/10这个的意思表示从第5分钟开始,每10分钟触发一次,也就是在第5分钟,15分钟,25分钟,35分钟,45分钟,55分钟分别触发一次。
  • 3.3 时
    0-23:时域的值,表示在几点的时候触发,如10表示在十点的时候触发。
    :用来分隔值的符号,可以让时域有多个值,如5,10,15表示分别在5点,10点,15点的时候触发。
    -:表示一个范围值,在指定范围内触发,如0-5表示在0点到5点,每小时触发一次
    *:这个表示每小时进行触发一次
    /:这个表示步进触发,/前面的值表示触发的开始时间,后面的值表示偏移量,如5/10这个的意思表示从5点开始,每10个小时触发一次,也就是在5点,15点分别触发一次。
  • 3.4 日
    1-31:日域的值,表示在几号的时候触发,如10表示在10号的时候触发。
    :用来分隔值的符号,可以让日域有多个值,如5,10,15表示分别在5号,10号,15号的时候触发。
    -:表示一个范围值,在指定范围内触发,如1-5表示在1号到5号,每天触发一次
    *:这个表示每天进行触发一次
    /:这个表示步进触发,/前面的值表示触发的开始时间,后面的值表示偏移量,如5/10这个的意思表示从5号开始,每10天触发一次,也就是在5号,15号分别触发一次。
    ?:与周互斥,如果使用这个值则表示完全使用周设置的值,日期这个值无意义
    L:表示最后一天执行
    W:表示距离日期最近的一个工作日触发,如17W,如果17号是周六,那么会在16号,也就是周五触发,如果17号是周日,那么就会在18号,也就是周一触发
    C:计划所关联的日期,如果日期没有被关联,则相当于日历中所有日期。例如5C在日期字段中就相当于日历5日以后的第一天。
  • 3.5 月
    1-12:月域的值,表示在几月的时候触发,如10表示在10月的时候触发
    JAN-DEC:月的英文缩写显示,从一到十二月
    :用来分隔值的符号,可以让月域有多个值,如5,10表示分别在5月,10月的时候触发。
    -:表示一个范围值,在指定范围内触发,如1-5表示在1月到5月,每月触发一次
    *:这个表示每月进行触发一次
    /:这个表示步进触发,/前面的值表示触发的开始时间,后面的值表示偏移量,如5/2这个的意思表示从5月开始,每2个月触发一次,也就是在5月,7月,9月,11月分别触发一次。
  • 3.6 周
    1-7:周域的值,表示在周几的时候触发,需要注意的是,这里一周的开始是周日。如1表示在周日的时候触发。
    SUN-SAT:周的英文缩写方法,从周日到周六
    :用来分隔值的符号,可以让周域有多个值,如2,3,4表示分别在周一,周二,周三的时候触发。
    -:表示一个范围值,在指定范围内触发,如2-4表示在周一到周三,每天触发一次
    *:这个表示每周进行触发一次
    /:这个表示步进触发,/前面的值表示触发的开始时间,后面的值表示偏移量,如2/2这个的意思表示从周一开始,每2天触发一次,也就是在周一,周三,周五,周日分别触发一次。
    ?:与日互斥,如果使用这个值则表示完全使用日设置的值,周这个值无意义
    L:表示该周最后一天执行,即周六触发
    C:计划所关联的日期,如果日期没有被关联,则相当于日历中所有日期。例如1C在周字段中就相当于星期日之后的第一天
    #:用来指定具体的周数,#前面代表星期,#后面代表本月第几周。如1#2表示第二周的周日
  • 3.7 年
    :空就是什么都不填,表示每年触发一次,和*的意思一样
    1970-2099:年域的值,表示在几几年的时候触发,如2023表示在2023年的时候触发
    :用来分隔值的符号,可以让年域有多个值,如2023,2024,2025表示分别在2023年,2024年,2025年的时候触发。
    -:表示一个范围值,在指定范围内触发,如2023-2025表示在2023年到2025年,每年触发一次
    *:这个表示每年进行触发一次
    /:这个表示步进触发,/前面的值表示触发的开始时间,后面的值表示偏移量,如2023/2这个的意思表示从2023年开始,每2年触发一次,也就是在2023年,2025年,2027年,...分别触发一次。

4. 总结

  1. 在使用cron表达式的时候,需要注意的是里面的符号全是英文的符号。
  2. 需要注意日域与周域这两个是互斥的,永远只会有一个生效。
  3. cron表达式是有七位,但是其年域可以省略,所以基本上都是只写了六位。

标签:表示,触发,一次,15,10,cron,表达式
From: https://www.cnblogs.com/mcj123/p/16983584.html

相关文章

  • 实用正则表达式扫描android SDcard的文件
    代码片段,双击复制​​package​​​​match;​​​​import​​​​java.io.File;​​​​im......
  • 25_Java中的Lambda表达式
    Java中的Lambda表达式()代表此接口中的唯一方法,"->"指向一个语句块{},{}语句块中表示这个方法的重写一、函数式编程思想概述​ 在数学中,函数就是有输入量,......
  • 关于Expression表达式树的拼接
    最近在做项目中遇到一个问题,需求是这样的:我要对已经存在的用户进行检索,可以根据用户的id或者用户名其中的一部分字符来检索出来,这样就出现了三种情况只有id,只有用......
  • Vue3项目-生成Cron表达式组件
    最近做的一个vue3项目过程中,需要用到cron表达式功能,而对于普通业务人员,他们是不懂cron表达式规则的,所以需要做一个可手动配置生成cron表达式的功能。从网上查找了一些......
  • EL表达式
    EL表达式  jsp的核心语法:jsp表达式<%= %> 和jsp脚本<%  %>使用EL表达式替换掉jsp表达式。EL表达式作用:向浏览器输出域对象中的变量或表达式计算的结果......
  • gocron客户端环境配置
    启动配置文件[root@gocron~]#cat/etc/systemd/system/gocron-node.service[Unit]Description=gocronAfter=network.target[Service]Type=simpleExecStart=/bin/bash-c......
  • gocron服户端环境配置
    服务部署version:'3'services:mysql:image:mysql:8.0container_name:mysqlenvironment:MYSQL_ROOT_PASSWORD:J1wLH9GAy4M9sfeeq654fsfMYSQL_......
  • linux CentOS Nginx 删除/查看定时任务列表命令 crontab命令文件位置(自动备份)
    教程:​​​​​​CentOSNginxcrontab定时任务每小时备份一次命令(删除5天以前某个后缀的文件)_我是高手高手高高手的博客-博客_centos每小时CentOSNginxcrontab定......
  • 5万字长文:Stream和Lambda表达式最佳实践-附PDF下载
    5万字长文详解介绍Stream和Lambda表达式最佳实践,干货实在太多,最后附上PDF下载,方便大家查阅!目录​1.Streams简介​​​1.1创建Stream​​​​1.2......
  • php ?? 和 ?: 三元表达式 扫盲
    1三元表达式 $a?:$b:$c    这个正常人都好理解2?:这个是语法糖 基本跟三元表达式一样  就是不能设置条件未true的值3??判断是否是null  记住只是......