定时执行crontab使用方法详解

#vi /etc/crontab
 
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
2 3 * * * root /usr/local/bin/freshclam
#0 1 * * * root /postbin/scanlog.sh
0 0-23/1 * * * root killall /root/pop;/root/pop
0 2 * * * root /postbin/auto_update.php
0 0 * * * root /postbin/run_plan.sh
22 4 * * 0 root /etc/rc.d/init.d/saslauthd stop;/usr/sbin/saslauthd -r -a pam -n 0
0 0 * * * root php -q /postbin/time_del.php
0 0-23/1 * * * root php -q /postbin/check_hw.php
0 0 * * * root find /mail -name quotawarn -type f -exec rm {} /;
 
如上即是使用方法。
 
 
详解:
 
crontab 基本上有兩种建立例行性命令的方式:
一种是针对所有使用者,可以藉由 crontab -e 的指令来下达工作排程;
另一种是针对系统管理员,你可以直接修改 /etc/crontab 这个文件,来直接定时执行。
 
假如你需要在每天的正午 12:00 发一封信给你自己,
#crontab -e
进入 vi 的编辑画面来编辑你的例行性命令,输入如下语句
0 12 * * * mail xxx @163.com < /home/cheney/test.txt
 
以上有5个数字,分别代表的意思是:
    分(0-59)
  小时(0-23)
  日期(1-31)
  月份(1-12)
  周 (0-6)
另外,如果是[ * ]的时候,代表所有数字都适用的意思。
 
所以,以上的语句就是不论何月、何日、星期几的 12 点 0 分时,执行 mail [email protected] < /home/cheney/test.txt 这个命令。
 
例1:
给你朋友发邮件,5月1号23:59时发送,使用:
# crontab -e 59 23 1 5 * mail [email protected] < /home/cheney/lover.txt
 
例2:
每隔6分钟检查相关文件,使用:
# crontab -e */6 * * * * /home/cheney/test.sh
 
删除例行性命令:

# crontab -r 就删除了 

你可能感兴趣的:(定时执行crontab使用方法详解)