当前位置: > Linux命令 >

crontab命令

时间:2015-01-18 01:50来源:linux.it.net.cn 作者:IT

crontab是任务调度命令,通俗的说就是去定时执行命令.在/etc目录下有一个crontab文件,每个用户可以建立自己的调度crontab。
crontab命令相关的文件:

  • /etc/cron.deny 该文件中所列的用户不允许使用Crontab命令
  • /etc/cron.allow 该文件中所列的用户允许使用Crontab命令 
  • /var/spool/cron/ 所有用户的crontab文件

crontab命令有三种形式的命令行结构: 

crontab [-u user] [file] 

crontab [-u user] [-e|-l|-r] 

crontab -l -u [-e|-l|-r] 第一个命令行中,file是命令文件的名字。如果在命令行中指定了这个文件,那么执行crontab命令,则将这个文件拷贝到crontabs目录下;如果在命令行中没有制定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将他们也存放在crontab目录下。 

命令行中-r选项的作用是从/usr/spool/cron/crontabs目录下删除用户定义的文件crontab; 

命令行中-l选项的作用是显示用户crontab文件的内容。 

使用命令crontab -u user -e命令编辑用户user的cron(c)作业。用户通过编辑文件来增加或修改任何作业请求。 

执行命令crontab -u user -r即可删除当前用户的所有的cron作业。

crontab任务格式
* * * * * /bin/bash /root/backup.sh >> aaa.log
分时日月周 命令程序 命令脚本

下面看看看几个具体的例子:

 

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
0 */2 * * * /sbin/service httpd restart  #每两个小时重启一次apache
 
50 7 * * * /sbin/service sshd start  #每天7:50开启ssh服务
 
50 22 * * * /sbin/service sshd stop  #每天22:50关闭ssh服务
 
0 0 1,15 * * fsck /home  #每月1号和15号检查/home 磁盘
 
1 * * * * /home/bruce/backup  #每小时的第一分执行 /home/bruce/backup这个文件
 
00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm {} \;  #每周一至周五3点钟,在目录/home中,查找文件名为*.xxx的文件,并删除4天前的文件。
 
30 6 */10 * * ls  #每月的1、11、21、31日是的6:30执行一次ls命令
 
*/1 * * * * sleep 30 && sh /root/cron.sh #30秒执行一次
*:10 * * * * /bin/bash /root/cron.sh #每十秒执行一次

(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容