快速业务通道

Linux定时任务系统Cron入门

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-24
.gz /etc 命令.>> /dev/null 2>&1 表示把所有标准输出发送到 /dev/null(linux的回收站),把标准错误输出(2)发送到和标准输出(1)同样的地方(即 /dev/null).运行这行命令将不会产生任何输出.

  这条语句可以变得稍微复杂一点:

  30 15 13 6 1 * root tar czf /usr/local/backups/daily/etc.tar.gz /etc >> /dev/null 2>&1它将在6月13日周一的15:30运行 tar czf /usr/local/backups/daily/etc.tar.gz /etc 命令.

  以下语句可以达到同样的效果:

  30 15 13 Jun Mon * root tar czf /usr/local/backups/daily/etc.tar.gz /etc >> /dev/null 2>&1如果你想以用户joey的身份每小时的第15分钟运行某个程序,可以使用:

Empire CMS,phome.net

  15 * * * * joey /usr/bin/somecommand >> /dev/null 2>&1其中的星号(*)是通配符,表示cron将忽略这个字段.

  如果你想每两小时就运行某个程序,可以在小时字段里使用 */2.它将会在2点,4点,6点……22点,24点运行.具体语句如下:

  0 */2 * * * joey /usr/bin/somecommand >> /dev/null 2>&1cron语句中还可以使用逗号(,)来指定多个时间.例如你想在每小时的15分和30分运行某个程序,可以在分钟字段使用 15,30:

  15,30 * * * * joey /usr/bin/somecommand >> /dev/null 2>&1如果你想在每月的第一周(即1号到7号)每天的指定时间运行某个程序,可以在日期字段使用 1-7:

  15,30 */2 1-7 * * joey /usr/bin/somecommand >> /dev/null 2>&1这条语句将在每月的第1-7日每两小时的15分和30分(02:15,02:30……22: 15,22:30等)运行 /usr/bin/somecommand 命令.

  如果你想在每天的16:18执行一个脚本集合,可以把所有要执行的脚本放到一个目录中(如 /home/username/cron),可以使用:

  18 16 * * * root run-parts /home/username/cron >> /dev/null 2>&1如果你想保存某个程序的输出结果, 可以把 >> /dev/null 2>&1 替换为 >> /home/user/somecommand.log 2>&1 .

  每次编辑完某个用户的cron设置后,cron自动在/var/spool/cron下生成一个与此用户同名的文件,此用户的cron信息都记录在这个文件中,这个文件是不可以直接编辑的,只可以用crontab -e 来编辑.cron启动后每过一份钟读一次这个文件,检查是否要执行里面的命令.因此此文件修改后不需要重新启动cron服务.

  2.编辑/etc/crontab 文件配置cron

  cron服务每分钟不仅要读一次/var/spool/cron内的所有文件,还需要读一次/etc/crontab,因此我们配置这个文件也能运用 cron服务做一些事情.用crontab配置是针对某个用户的,而编辑/etc/crontab是针对系统的任务.此文件的文件格式是:

  SHELL=/bin/bash

  PATH=/sbin:/bin:/usr/sbin:/usr/bin

  MAILTO=root //如果出现错误,或者有数据输出,数据作为邮件发给这个帐号

  HOME=/ //使用者运行的路径,这里是根目录

  # run-parts

Empire CMS,phome.net

  01 * * * * root run-parts /etc/cron.hourly //每小时执行/etc/cron.hourly内的脚本

  02 4 * * * root run-parts /etc/cron.daily //每天执行/etc/cron.daily内的脚本

  22 4 * * 0 root run-parts /etc/cron.weekly //每星期执行/etc/cron.weekly内的脚本

  42 4 1 * * root run-parts /etc/cron.monthly //每月去执行/etc/cron.monthly内的脚本

  大家注意"run-parts"这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是文件夹名了.

  基本格式 :

  *  *  *  *  *  command

  

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号