crontab是UNIX系统下的定时任务触发器。用它可以设定一些计划任务在特定的时间执行,比如我对服务器的路由在线做了修改,怕修改了一会进不去,就可以设定定时器,让服务器在15分钟后自动reboot,这样要是出现了问题,reboot后又恢复原来的值了,就又可以登陆了!
一共是五个时间段,其含义如下:
minute字段代表分钟
0—59
hour字段代表小时
0—23
mday字段代表日期
1—31
month字段代表月份
1—12
wday字段代表星期几,0代表星期日
0—6
注:以上数字可以写05,也可以写5,前面有0无0都可以

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

0 */1 * * * root /sbin/service httpd restart 意思是每一个小时重启一次httpd
40 06 * * * root /sbin/service sshd start 意思是每天的6点40分开启sshd服务
40 23 * * * root /sbin/service sshd stop 意思是每天的23点40关闭sshd服务
0 0 1,25 * * /usr/bin/find fsck /usr 每月1号和25号检查/usr分区
5 * * * * root /usr/sbin/backup 每小时的第五分钟执行/usr/sbin/backup这个程序
00 02 * * 1-6 root find /user "*.mp3" -mtime +5 -exec rm {} \; 每周一至周六2点钟,在目录/user中,查找文件名为*.mp3的文件,并删除5天前的文件。
30 5 */10 * * root /usr/sbin/backup 意思是每月的1、11、21、31日是的5点30分执行一次/usr/sbin/backup这个程序。

下面是我的crontab

[root@www.unixnotes.net /]# more /etc/crontab
SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log
#
#minute hour mday month wday who command
...
...
#*/5 * * * * root /sbin/pfctl -f /etc/pf.conf

20 11 * * * root /sbin/reboot

完!

文章作者:UnixNotes 本文转摘自:http://www.unixnotes.net/crontab%e5%ae%9a%e6%97%b6%e4%bb%bb%e5%8a%a1%e8%a7%a6%e5%8f%91%e5%99%a8%e7%94%a8%e6%b3%95.html

02-12 07:36