Linux 利用 crontab 实现定时任务格式与用法简介

在使用 Linux 时,我们经常需要执行一些定时任务,如每天定时重启 Nginx,每周定时重启 MySQL 数据库,每秒爬取一次数据等等,而 crontab 可以非常方便的实现这些定时任务,crontab 也是老王最常用的 Linux 定时任务工具,下面就 crontab 格式crontab 用法做一个简单介绍。

crontab 介绍

一、crontab 简介

crontab 命令常见于 Unix 和类 Unix 的操作系统之中,用于设置周期性被执行的指令。Linux中 ,crontab 也是一个常用的用来定时执行程序的命令,并且一般来说 crontab 会内置,不需要额外安装。

二、crontab 格式与用法

crontab 格式如下:

* * * * * command

5 个 * 分别代表分、时、日、月、周,command 则是需要执行的命令。关于分、时、日、月、周的数值范围介绍如下:

代表意义分钟小时日期月份command
数字范围0~590~231~311~120~7需要执行的命令

其中周的 0 和 7 都代表周日(星期天)。

另外,关于常用的辅助字符解释如下:

特殊字符代表意义
*(星号)代表任何时刻都接受的意思。举例来说,如果日、月、周都是 * ,而分钟是 0,小时是 12,就代表着不论何月、何日的礼拜几的 12:00 都执行后续命令的意思。
,(逗号)代表分隔时段的意思。举例来说,如果要执行的工作是 3:00 与 6:00 时,就会是:0 3,6 * * * command时间还是有五列,不过第二列是 3,6 ,代表 3 与 6 都会执行命令。
-(减号)代表一段时间范围内,举例来说,8 点到 12 点之间的每小时的 20 分都进行一项工作:20 8-12 * * * command仔细看到第二列变成 8-12 代表 8,9,10,11,12 都适用的意思
/n(斜线)那个n代表数字,即是每隔 n 单位间隔的意思,例如每五分钟进行一次,则:*/5 * * * * command用 * 与 /5 来搭配,也可以写成 0-59/5 ,意思相同,这里就表示每 5 分钟执行一次

常用的 crontab 任务查看与编辑方式如下:

# 查看用户目前的所有crontab
crontab -l

# 编辑当前用户的crontab
crontab -e

添加完 crontab 定时任务后,直接保存即生效,不需要重启服务器。

三、crontab 定时任务实例

下面以 crontab 每分钟、每小时、每天、每周、每月、每年执行各举一个例子:

参考:Linux利用crontab设置定时任务,每分钟/每小时/每天/每月定时执行

赞(0)
关注我们
未经允许不得转载:老王博客 » Linux 利用 crontab 实现定时任务格式与用法简介

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址