(这些文章都是从我的个人主页上粘贴过来的,大家也可以访问我的主页 www.iwangzheng.com)
crontab是LINUX系统下的定时任务触发器,常用的方法如下:
crontab -l 显示用户crontab文件的内容
crontab -r 删除用户的crontab文件
crontab -e 编辑crontab文件
它的格式共分为六段,前五段为时间设定段,第六段为所要执行的命令段,
格式如下:Min Hour Date Month Day program
第一段代表分钟0-59,第二段代表小时0-23,第三段代表日期1-31,第四段代表月份1-12,第五段代表星期0-6,其中0是星期天,
本次我用到的是
#0 7 * * * cd /vol/remote_logs_shelter && ruby apple.rb 意思就是每天早上七点打开目录,并执行一下apple.rb
以下是从网上找到的一些例子
● 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命令
在 12 月内, 每天的早上 6 点到 12 点中,每隔 20 分钟执行一次 /usr/bin/backup :
0 6-12/3 * 12 * /usr/bin/backup
周一到周五每天下午 5:00 寄一封信给 alex@domain.name :
0 17 * * 1-5 mail -s "hi" alex@domain.name /dev/null 2>&1 即可
例:如果用户的Crontab文件的内容是:29 19 * * * echo its dinner time,则系统每天的19:29显示‘its dinner time’
示例(创建一个cron全过程,每分钟都会在test.txt里输入当前时间):