快速业务通道

在看一个经典教材写的crontab时遇到的点小问题

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-07-04
为了能够在特定的时间运行作业,需要了解c r o n t a b文件每个条目中各个域的意义和格式.
下面就是这些域:
第1列分钟1~5 9
第2列小时1~2 3(0表示子夜)
第3列日1~3 1
第4列月1~1 2
第5列星期0~6(0表示星期天)
第6列要运行的命令
下面是c r o n t a b的格式:
分< >时< >日< >月< >星期< >要运行的命令
其中< >表示空格.
C r o n t a b文件的一个条目是从左边读起的,第一列是分,一列是要运行的命令,它位于星期的后面.在这些域中,可以用横杠-来表示一个时间范围,例如你希望星期一至星期五运行某个作业,那么可以在星期域使用1 - 5来表示.还可以在这些域中使用逗号“,”,例如你希望星期一和星期四运行某个作业,只需要使用1 , 4来表示.可以用星号*来表示连续的时间段.如果你对某个表示时间的域没有特别的限定,也应该在该域填入*.该文件的每一个条目含有5个时间域,每个域之间要用空格分隔.该文件中所有的注释行要在行首用#来表示. 下面我在贴张图,是几个例子,都是比较基础的,高手就可以飘过了... 在看contrab的命令和用法,偶尔看到一个任务,把我糊弄了好久,接着发到群里问了下大家,群里还真有好多好人和高手,就这条任务给了好多建议,下面我把截图给贴上来,给大家看下: 上面这个写法引起了大家的观点,对小时的这个写法提出了观点,18-06,我在RHEL5.3下面实验了下,是错误的,有人建议改成06-18,这样是可以的,但是又和原来的意思有变化了,于是有人建议改为18-23,0-06,经过试验,这样是可以的,对于第一个分钟的写法有人给了建议写成 */15,这个写法比较简单,经过试验是可以的,经过大家的讨论后,任务代码可以写出如下:*/15 18-23,0-06 * * * /bin/echo ''date'' > /dev/console 呵呵,一个问题和大家讨论之后,可以学到更多的知识.... 关于上面的原文的任务中的写法,可能是当时作者的系统中是可以运行的,而我现在的运行环境和作者当时的不一样,会出现书中的代码不能运行这样的事情发生,希望大家在看书时对于每个知识点都实践下,遇到疑问和别人商量下,也许会有意外的收获... 文章的附件是我从网上下的资料,先上传,相信大家可能都有,这个是很经典的教材,传上来,没有的朋友,可以看下...

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号