cron表达式语法规则及常见示例

简介: cron表达式语法规则及常见示例

cron表达式产生的背景

cron表达式最初是由Unix操作系统中的cron守护进程所使用的一种语法规则,用于设置定时任务。cron守护进程是Unix系统中的一个后台进程,用于周期性地执行指定的命令或脚本。它可以根据用户的需求,按照指定的时间间隔或时间点来执行任务,通常用于定时备份、清理日志、发送邮件等操作。


为了方便用户设置定时任务,cron守护进程引入了一种简单的语法规则,即cron表达式。cron表达式由6个字段组成,分别表示秒、分、小时、日期、月份和星期几。每个字段都可以设置一个数字、一组数字(用逗号分隔)、一段数字范围(用短横线分隔)、通配符(表示任意值)或者特定的字符(如星期几的英文缩写)。通过这种语法规则,用户可以非常灵活地设置定时任务,满足不同的需求。


随着Unix操作系统的普及和互联网的发展,cron表达式逐渐成为了一种通用的定时任务设置语法,被广泛应用于各种计算机系统和应用程序中。目前,cron表达式已经成为了计算机科学中的一个基本概念,被包括Java、Python、Ruby等编程语言在内的许多软件框架和库所支持和应用。


什么是cron表达式

cron表达式是一种用于设置定时任务的语法规则。它由6个字段组成,分别表示秒、分、小时、日期、月份和星期几。每个字段都可以设置一个数字、一组数字(用逗号分隔)、一段数字范围(用短横线分隔)、通配符(表示任意值)或者特定的字符(如星期几的英文缩写)。以下是cron表达式的语法规则:


* * * * * *
- - - - - -
| | | | | |
| | | | | +--- 星期几 (0 - 6) (0表示周日)
| | | | +----- 月份 (1 - 12)
| | | +------- 日期 (1 - 31)
| | +--------- 小时 (0 - 23)
| +----------- 分钟 (0 - 59)
+------------- 秒 (0 - 59)

常见示例

下面是10个cron表达式的示例,以及它们的含义:


  1. 0 0 0 * * ?:每天的零点整执行任务。
  2. 0 0 */2 * * ?:每隔2小时执行一次任务。
  3. 0 0 12 * * ?:每天中午12点执行任务。
  4. 0 15 10 * * ?:每天上午10点15分执行任务。
  5. 0 0 6,18 * * ?:每天的早上6点和晚上6点执行任务。
  6. 0 0/30 8-18 * * ?:每天的上午8点到下午6点之间,每隔30分钟执行一次任务。
  7. 0 0 0 1 1 ?:每年的1月1日零点整执行任务。
  8. 0 0 0 * * 2:每周的星期二零点整执行任务。
  9. 0 0 0 ? * 6#3:每月的第三个星期六零点整执行任务。
  10. 0 0 0 L * ?:每个月的最后一天零点整执行任务。

这些示例只是cron表达式的一小部分,实际上还有很多其他的用法和组合方式。需要根据具体需求来设置定时任务。

目录
相关文章
|
负载均衡 Java 物联网
SpringCloud简介和用处
SpringCloud简介和用处
630 0
|
SQL 存储 运维
基于MySQL Catalog作为CDC源表示例操作
基于MySQL Catalog作为CDC源表示例操作
基于MySQL Catalog作为CDC源表示例操作
|
缓存 Java 数据库
微服务——SpringBoot使用归纳——Spring Boot中使用监听器——监听器介绍和使用
本文介绍了在Spring Boot中使用监听器的方法。首先讲解了Web监听器的概念,即通过监听特定事件(如ServletContext、HttpSession和ServletRequest的创建与销毁)实现监控和处理逻辑。接着详细说明了三种实际应用场景:1) 监听Servlet上下文对象以初始化缓存数据;2) 监听HTTP会话Session对象统计在线用户数;3) 监听客户端请求的Servlet Request对象获取访问信息。每种场景均配有代码示例,帮助开发者理解并应用监听器功能。
782 0
|
调度
【Cron表达式】cron表达式详细介绍以及常用的例子
【Cron表达式】cron表达式详细介绍以及常用的例子
5503 2
|
监控 供应链 数据可视化
一文读懂看板管理法:生产看板到底看什么、怎么管、怎么用
看板管理是制造业精益生产中的核心工具,助力实现生产可视化与高效协同。本文系统解析看板管理法,涵盖其基于拉动式与准时化生产的核心逻辑、六类常见看板的应用场景,以及车间搭建看板的具体方法,助力企业推动精益生产落地。
|
人工智能 前端开发 机器人
10个优质独立开发者社区
以下是我整理的10个优质独立开发者社区,都是自己平时经常逛或参与过的,分类整理方便不同需求的开发者参考
|
Unix Linux
Cron介绍,以及常见的cron表达式
Cron介绍,以及常见的cron表达式
1658 0
|
NoSQL 关系型数据库 MySQL
开发者福音:用IDEA和Iedis2加速Redis开发与调试
开发者福音:用IDEA和Iedis2加速Redis开发与调试
452 0
开发者福音:用IDEA和Iedis2加速Redis开发与调试
|
人工智能 安全 Java
【Java】完全适配各类中小医院专科医院和诊所的云HIS系统源码
【Java】完全适配各类中小医院专科医院和诊所的云HIS系统源码
847 2
【Java】完全适配各类中小医院专科医院和诊所的云HIS系统源码
|
开发工具 git
【Github】sync fork后,意外关闭之前提交分支的pr申请 + 找回被关闭的pr请求分支中的文件
【Github】sync fork后,意外关闭之前提交分支的pr申请 + 找回被关闭的pr请求分支中的文件
793 5

热门文章

最新文章