第3章后台执行命令

cron和crontab
作用:c r o n是系统主要的自动调度进程。
每一个用户都可以有一个c r o n t a b文件来保存调度信息。可以使用它运行任意一个s h e l l脚本或某个命令。
每一个用户都可以有自己的c r o n t a b文件,但在一个较大的系统中,系统管理员一般会禁止这些文件,而只在整个系统保留一个这样的文件。系统管理员是通过
c r o n . d e n y和c r o n . a l l o w这两个文件来禁止或允许用户拥有自己的c r o n t a b文件

※※※注意:用户向c r o n提交了这些作业,就要向c r o n提供所需的全部环境。不要假定c r o n知道所需要的特殊环境,它其实并不知道。所以你要保证在s h e l l脚本中提供所有必要的路径和环境变量,除了一些自动设置的全局变量。

crontab各个域的意义和格式:

第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个时间域,而且每个域之间要用空格分隔。
注释:#

crontab命令选项
c r o n t a b命令的一般形式为:
Crontab [-u user] -e -l -r
其中:
-u 用户名。
-e 编辑c r o n t a b文件。
-l 列出c r o n t a b文件中的内容。
-r 删除c r o n t a b文件。
如果使用自己的名字登录,就不用使用- u选项,因为在执行c r o n t a b命令时,该命令能够知道当前的用户。

项目实践:
contab -e   #编辑contab
2 * * * * sh /export/home/porject/cms/sh/count_request.sh > /export/home/porject/cms/sh/count_log.txt

猜你喜欢

转载自aaron-meng.iteye.com/blog/869244