随笔-80  评论-24  文章-0  trackbacks-0
之前在百度实习的时候搞过一回crontab,不过也是边查边用,过后就忘了,今天帮实验室搞一个流量监控系统,再次遇到crontab,决定这次做下笔记,防止下次再用到时忘掉。
首先,crontab分为两类:系统crontab,用户crontab。
按照我的理解,系统crontab可以使不同的用户crontab任务都放到/etc/crontab文件中指定。而用户crontab仅允许当前用户调用crontab -e命令来编辑自己的任务。
下面讲解crontab具体使用以及语法。
crontab -e添加的命令必须如下面的格式:
* * * * * command
其中前五个字段的含义依次是:
分钟:0-59
小时:0-23
日期:1-31
月份:1-12
星期:0-6(0代表周日)
不过可以采用一些类似正则表达式里的特殊符号来表示:“*”表示任意,“,”表示分隔,“-”表示时间段,如1-5,“/n”表示每隔n个单位执行一次,如*/3及表示每3个小时执行一次。
如下面的一些例子:
3 8-23/3 * * * 代表8:03、11:03、14:03、17:03、20:03、23:03各执行一次命令
其实crontab主要内容就是这么简单,一般的任务都可以用这些知识来搞定
这里补充一个,因为crontab运行任务并不知道任务执行成功不成功,因此最好对执行的任务加上log,如下面的命令:
10 0 * * * cd /home/myjfm/output/ && /bin/bash crntb_start.sh >> /home/myjfm/output/crontab.log 2>&1
代表将crontab执行任务的日志输出到/home/myjfm/output/crontab.log文件中,这样,如果crontab执行不成功,则可以通过查看crontab.log文件来排错,非常实用。
posted on 2012-12-12 01:02 myjfm 阅读(9261) 评论(1)  编辑 收藏 引用 所属分类:

评论:
# re: Linux添加crontab定时任务 2015-01-14 11:33 | 在线工具
给你一个验证工具:http://www.atool.org/crontab.php  回复  更多评论
  

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理