Linux之定时任务Crontab

在Linux上,通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常适合周期性的日志分析或数据备份等工作。
格式如下

* * * * * command to be executed
- - - - -
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday=0 or 7)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)

前五个时间设定段,可以含如下特殊字符:

1、星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作;

2、逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”;

3、中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”;

4、正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

举个例子,编写一个定时任务脚本,每隔1分钟把时间写入到指定文件中

vi writedate.sh
#! /lib/bin
touch /opt/m/date.text
date >> /opt/m/date.text

给脚本赋予可执行权限
Linux之定时任务Crontab_第1张图片
添加任务,编辑当前用户的任务列表

crontab -e

任务列表内容

*/1 * * * * sh /opt/m/writedate.sh

查看当前定时任务

crontab -l

重启crontab,配置生效

systemctl restart crond.service

查看任务的历史

tail -f /var/log/cron

清除任务

crontab -r

定时任务脚本执行如下
Linux之定时任务Crontab_第2张图片

你可能感兴趣的:(Linux,linux,运维,centos)