简单理解crontab表达式

简介: 简单理解crontab表达式

在日常工作中,我在使用定时任务的场景,一般使用Windows计划任务,或者hangfire这类的定时任务框架,因为hangfire已经实现了常用的cron表达式封装,所以一直也没去了解太多。

趁着最近有空,补习一下cron相关的知识。

认识cron表达式

cron表达式是一个字符串,用空格分隔,一般分成6或者7个字段,如:分 小时 日 月 周 年(可选), 在crontab中,没有秒这项

cron表达式的用法

cron 字段可以使用特殊符号来表达出不同的意思,比如 ,-/*LW 等符号

  • * 表示所在项的每个点都触发,比如 *在第一位,说明每一分钟都要触发
  • ,表示选中的时间点,比如5,10 可以在5和10的时间点触发
  • -表示时间段,比如5-10 表示在5到10这个时间段,每一个点都触发
  • /表示除以这个数字为0,就可以触发,比如 */2表示 每触到除以2等于0的时候,都可以触发
  • L是单词last的缩写,表示最后一天,比如天的位上,用L,说明是最后一天
  • W表示工作日,是单词weekday的缩写,表示周一到周五

比如需要每小时第5分钟执行一次 ,可以写 5 * * * *

每五分钟执行一次 */5 * * * *

每 1小时触发一次 0 */1 * * *

每周一零点触发一次 0 0 * * 6

每个月1号零点触发一次 0 0 1 * *

每月最后一天触发 0 0 L * *

使用建议

一般来说,使用cron表达式的时候,最好找个工具验证一下。毕竟人不是机器,容易出错

推荐 tool.lu/crontab/

目录
相关文章
|
Java Unix 调度
cron 表达式解读
cron 表达式解读
|
Shell
Shell学习(三):运算符与条件判断
Shell学习(三):运算符与条件判断
Shell学习(三):运算符与条件判断
Crontab 表达式详解
一个cron表达式有至少6个(也可能7个,6个比7个少元素秒)由空格分隔的时间元素。
131 0
|
Java
表达式脚本
表达式脚本
91 0
Cron 表达式的一个误区
Cron 表达式的一个误区
126 0
Cron 表达式的一个误区
|
数据库
Confluence 6 Cron 表达式
一个 cron 表达式是以 6-7 时间字段来定义一个计划任务是如何按照时间被执行的。每一个字段中的数据库而已为数字或者是一些特定的字符串来进行表达。
1119 0