crontab 基本用法

crontab格式:
第1列分钟1~59
第2列小时1~23(0表示子夜)
第3列日1~31
第4列月1~12
第5列星期0~6(0表示星期天)
第6列要运行的命令

还可以用一些特殊符号:

       *: 表示任何时刻

       ,: 表示分割

  -:表示一个段,如第二端里: 1-5,就表示1到5点

       /n : 表示每个n的单位执行一次,如第二段里,*/1, 就表示每隔1个小时执行一次命令。也可以写成1-23/1.

 

这里有crontab文件条目的一些例子:

0,10 17 * * 0,2,3     每周日,周二,周三的 17:00 17:10 执行

*/10 * * * *        每隔10 执行

30 21 * * * /usr/local/apache/bin/apachectl restart
上面的例子表示每晚的21:30重启apache。

45 4 1,10,22 * * /usr/local/apache/bin/apachectl restart
上面的例子表示每月1、10、22日的4 : 45重启apache。

10 1 * * 6,0 /usr/local/apache/bin/apachectl restart
上面的例子表示每周六、周日的1 : 10重启apache。

0,30 18-23 * * * /usr/local/apache/bin/apachectl restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。

0 23 * * 6 /usr/local/apache/bin/apachectl restart
上面的例子表示每星期六的11 : 00 pm重启apache。

* */1 * * * /usr/local/apache/bin/apachectl restart
每一小时重启apache

* 23-7/1 * * * /usr/local/apache/bin/apachectl restart
晚上11点到早上7点之间,每隔一小时重启apache

0 11 4 * mon-wed /usr/local/apache/bin/apachectl restart
每月的4号与每周一到周三的11点重启apache

0 4 1 jan * /usr/local/apache/bin/apachectl restart
一月一号的4点重启apache

crontab命令:
crontab查看,编辑,重启,停止,开始
crontab -[l,e] service crond [restart,stop,start]

值得注意的地方,crontab里定时调用命令时,命令如果不在crontab的classpath里,要带全路径。
比如mysql应该写为 /usr/local/mysql/bin/mysql

 

2>&1 含义

在这里有有几个数字的意思:

       0表示键盘输入

       1表示标准输出

       2表示错误输出.

在2>&1中,如果没有&,表示输出到1文件。

举例:

#pwd

/test

#ls

 

#ls 2>1

有错误输出到1文件。

#ls xxx 2>&1

将产生没有xxx文件的错误输出到屏幕 

cannot access xxx: No such file or directory

posted @ 2013-08-02 11:59  simpman  阅读(439)  评论(0编辑  收藏  举报