前言
本文不对Cron Jobs的相关命令做具体的介绍,只是想解释一下使用cron作业调度的时间设置。
有时,我们会执行一些经常性、周期性的任务,比如:文件备份、发送通知等。但是每次手动操作又十分的繁琐,一般会使用命令或脚本辅助我们完成这些工作。而在Unix-like操作系统中有作业调度命令,可以实现一些作业的定时调度,将这两者结合起来就自动化定时执行这些任务了。
使用
作业调度的形式一般像是这样:? ? ? ? ? command_to_execute,其完整的表达式是:
{minute} {hour} {day of month} {month} {day of week} command_to_execute
以下是表达式各部分的具体解释:
1 | # ┌───────────── minute (0 - 59) |
上面的解释中,*代表所有可能的值,比如:分钟的*表示0-59。其中,对于month和week都可以用英文缩写代替,Week: SUN-SAT代表0-6,JAN-DEC代表1-12月。不过,一般习惯用数字表示。
现在讲一下,时间设置中常见的几种类型(以minute为例):
1 | 1,5,7 # 表示在1,5,7分钟触发 |
根据以上解释,现在我们可以写一些作业调度的时间设置了。
1 | # 每10分钟调度一次 |
推荐一个网站(crontab guru)可以让你更加直观的理解Cron Jobs调度的时间设置 。
总结
Cron Jobs是一种管理重复性任务的不错的选择,它非常实用,也很容易上手,选择使用正确的命令和时间设置,就可以开启定时执行我们的任务了。
参考文档
[1] Wikipedia: cron