您的位置:首页 > 运维架构 > Linux

linux定时任务1-crontab命令

2016-04-12 22:18 525 查看
简单测试例子:

添加定时任务前,注意查看crond服务是否已经启动,如果未启动,则用命令service crond start命令启动。

注意给脚本添加可执行权限。

[root@rheltest1 ~]# service crond status  //查看crond服务的启动状态
crond (pid  1742) is running...
[root@rheltest1 ~]# vi test_date.sh    //vi 命令创建测试脚本

/bin/date >> /tmp/test_date.log
~

[root@rheltest1 ~]# chmod u+x test_date.sh   //添加脚本可执行的权限
[root@rheltest1 ~]# crontab -e               //添加定时任务(格式:分 时 日 月 星期  命令),表示每隔一分钟执行一次test_date.sh脚本

* * * * * /root/test_date.sh
~
~
[root@rheltest1 ~]# crontab -l      //查看已添加的定时任务
* * * * * /root/test_date.sh
[root@rheltest1 ~]# cat /tmp/test_date.log   //检查定时任务执行结果
Tue Apr 12 21:47:01 CST 2016
Tue Apr 12 21:48:01 CST 2016
Tue Apr 12 21:49:01 CST 2016


测试2:

多个数值用逗号隔开,如在每月1、3、4、12号的22:03执行定时任务

[root@rheltest1 ~]# echo ''> /tmp/test_date.log   //清空test_date.sh文件内容
[root@rheltest1 ~]# cat /tmp/test_date.log

[root@rheltest1 ~]# crontab -e    //修改定时任务为1、3、4、12号的22:03执行定时任务

3 22 1,3,4,12 * * /root/test_date.sh

[root@rheltest1 ~]# cat /tmp/test_date.log   //查看执行结果
Tue Apr 12 22:03:01 CST 2016


测试3:

连续时间可用“-”表示。如在每个小时10分、11分、12分时执行定时任务。

[root@rheltest1 ~]# echo ''> /tmp/test_date.log
[root@rheltest1 ~]# crontab -e

10-12 * * * * /root/test_date.sh

[root@rheltest1 ~]# cat /tmp/test_date.log

Tue Apr 12 22:10:02 CST 2016
Tue Apr 12 22:11:01 CST 2016
Tue Apr 12 22:12:01 CST 2016


命令参数说明:

crontab –u   //设定某个用户的定时服务,一般root用户在执行这个命令的时候需要此参数
crontab –l   //列出某个用户定时服务的详细内容
crontab –r   //删除某个用户的定时服务 crontab -i 也是删除定时任务,但在删除前会有提示
crontab –e   //编辑某个用户的定时服务

M: 分钟(0-59)

H:小时(0-23)

D:天(1-31)

m: 月(1-12)

d: 一星期内的天(0~6,0或7为星期天)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: