shell编程中crontab用法超级详解!

使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux命令。

时间格式:{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script}
(分钟 小时 天 月 星期 命令)
o minute: 区间为 0 – 59 
o hour: 区间为0 – 23 
o day-of-month: 区间为0 – 31 
o month: 区间为1 – 12. 1 是1月. 12是12月. 
o Day-of-week: 区间为0 – 7. 周日可以是0或7.


以下是 crontab 的有效选项:
o crontab –e : 修改 crontab 文件. 如果文件不存在会自动创建。 
o crontab –l : 显示 crontab 文件。 
o crontab -r : 删除 crontab 文件。
o crontab -ir : 删除 crontab 文件前提醒用户。

/******************************************************************************************************************************/

1.系统管理员安排一个备份任务使其每天早上5点运行 /root/bin/backup.sh?
# crontab –e
 0 5 * * * /root/bin/backup.sh

2.在 12:01 a.m 运行,即每天凌晨过一分钟。
   1 0 * * * /root/bin/backup.sh

3.每个工作日(Mon – Fri) 11:59 p.m 都进行备份作业。
       59 11 * * 1,2,3,4,5 /root/bin/backup.sh
  下面例子与上面的例子效果一样:
       59 11 * * 1-5 /root/bin/backup.sh

4.每5分钟运行一次命令(我想每隔5分钟就要执行某个命令,或者我想在每天的6点、12点、18点执行命令,诸如此类的周期,可以通过 “ / ” 和 “ , ” 来设置)
     */5 * * * * /root/bin/check-status.sh
每天6点、12点、18点执行
     0 6,12,18   *   *   *    root
每两个小时执行
     0 */2 * * * echo "have a break now." >> /tmp/test.txt

5.每个月的第一天 1:10 p.m 运行
    10 13 1 * * /root/bin/full-backup.sh


6.每个工作日 11 p.m 运行。
    0 23 * * 1-5 /root/bin/incremental-backup.sh

7.每周六、周日的3点10分执行hello程序。
    10 3 * * 0,6 hello

8.每周日凌晨4点,更新系统
    0 4  * * 0     root emerge --sync && emerge -uD world 

9.每月1号凌晨2点,清理/tmp下的文件
    0 2 1 * *     root   rm -f /tmp/*

10.每年5月6日给robin发信祝他生日快乐
     0 8 6 5 *   root     mail  robin < /home/galeki/happy.txt

11.每个月的4号与每个礼拜的礼拜一到礼拜三的早上11点
     0 11 4 * 1-3 command line

12.每月1、10、22日的4 : 45重启apache。
     45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart


 

猜你喜欢

转载自blog.csdn.net/weibo1230123/article/details/82108623