linux定时任务1-crontab命令

简单测试例子:

添加定时任务前,注意查看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为星期天)

posted on 2016-04-12 22:18  遠離塵世の方舟  阅读(394)  评论(0编辑  收藏  举报

导航