Linux指令——crontab

crontab指令的作用是周期性的自动执行文件。

目录

一.安装

二.使用

(一).编辑指令

第一步进入crontab编辑页面

 第二步输入crontab指令

(二).删除指令

三.拓展


比如我需要每天晚上7点执行一个文件,那么就可以使用crontab指令,使linux操作系统自动执行。

下面介绍crontab指令的用法:

一.安装

先检查是否安装

crontab -l
# 如果“no crontab for root”说明没有安装。

安装指令

yum -install -y vixie-cron
yum -install -y crontabs

二.使用

首先我们需要知道几个实用参数。

crontab -e       编辑crontab指令

crontab -l        查看当前crontab指令        

crontab -r        删除本用户crontab指令

(一).编辑指令

第一步进入crontab编辑页面

crontab -e

Linux指令——crontab_第1张图片 虽然该页面看着别扭,但它其实就是vim编辑器,所以使用方式与vim编辑器一致

 第二步输入crontab指令

crontab指令的格式如下:

分钟  小时  日期  月份  星期  具体指令

参数范围:

分钟 0 ~ 59
小时 0 ~ 23
日期 1 ~ 31
月份 1 ~ 12
星期 0 ~ 7 //0和7都是星期日

特殊参数:

参数符号 参数含义 参数实例
* 全部时间

0 5 * 7 * clear

#在7月每一天5点整执行clear 

start/num start开始每隔num时间执行

*/10 * * * * clear

#每隔10分钟执行clear

- 范围时间内执行

* 5-6 * * * clear

#每天5点到6点执行clear

, 指定时间执行

0 5,14,21 * * * clear

#每天5点14点21点整执行clear

举几个例子:

① 每月1号零点整删除data.txt文件

0 0 1 * * rm -f data.txt

②每隔90分钟执行ls指令

这个实现稍特殊,我们不能一行指令实现它,所以可以使用两个来合作实现。

90 * 2 = 180分钟,正好是3个小时。

一个从0点开始,每隔3小时执行。//0、3:00、6:00...

一个从1:30开始,每隔3小时执行。//1:30、4:30、7:30...

组合起来就是每隔90分钟执行。

0 0/3 * * * ls
30 1/3 * * * ls

(二).删除指令

crontab -r是直接删除该用户所有crontab指令。

如果想单独删除就使用crontab -e来具体编辑。

三.拓展

我们可以首先写一个shell文件,在写crontab指令时直接调用该指令,以防需实现的指令过多造成编辑和阅读困难。

比如我们要每天7点整执行一个hello.c文件。

Linux指令——crontab_第2张图片

可以编写一个hello.sh文件,里面执行./hello

 注意hello.sh需要赋予可执行权限。

在crontab指令中实现0 7 * * * ./hello.sh即可。

Linux指令——crontab_第3张图片

要注意,此时程序结果是在后台运行的。

如果还没想清楚,就用蛮力算法。——Ken Thompson 


如有错误,敬请斧正

你可能感兴趣的:(Linux,linux,运维,服务器,crontab,指令)