分类: LINUX
2009-06-18 10:57:21
crontab 是linux 系统下很方便的定时执行任务的程序。
使用cron服务,用 service crond status 查看 cron服务状态,如果没有启动则
service crond start 启动它。
cron服务是一个定时执行的服务,可以通过crontab 命令添加或者编辑需要定时执行的任
务:
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除某个用户的cron服务
crontab -e //编辑某个用户的cron服务
比如说root查看自己的cron设置:crontab -u root -l
再例如,root想删除new的cron设置:crontab -u new -r
在编辑crontab服务时,编辑的内容有一些格式和约定。
输入 crontab -e 进入vi编辑模式:编辑的内容一定要符合下面格式:
minute hour day month dayofweek command
minute — 分钟,从 0 到 59 之间的任何整数
hour — 小时,从 0 到 23 之间的任何整数
day — 日期,从 1 到 31 之间的任何整数(如果指定了月份,必须是该月份的有效日期)
month — 月份,从 1 到 12 之间的任何整数(或使用月份的英文简写如 jan、feb 等等)
dayofweek — 星期,从 0 到 7 之间的任何整数,这里的 0 或 7 代表星期日(或使用星期
的英文简写 如 sun、mon 等等)
command — 要执行的命令(命令可以是 ls /proc >> /tmp/proc 之类的命令,也可以是
执行你自行编写 的脚本的命令。)
在以上任何值中,星号(*)可以用来代表所有有效的值。
譬如,月份值中的星号意味着在满足其它制约条件后 每月都执行该命令。
整数间的短线(-)指定一个整数范围。
譬如,1-4 意味着整数 1、2、3、4。
用逗号(,)隔开的一系列值指定一个列表。
譬如,3, 4, 6, 8 标明这四个指定的整数。
正斜线(/)可以用来指定间隔频率。
在范围后加上 / 意味着在范围内可以跳过 integer。
譬如,0-59/2 可以用来在分钟字段定义每两分钟。
间隔频率值还可以和星号一起使用。
例如,*/3 的值可以用在月份字段中 表示每三个月运行一次任务。
开头为井号(#)的行是注释,不会被处理。
具体步骤为:
(1) vi test.sh 编写要定时执行的任务的脚本,
chomd +x test.sh 使其具有可执行权限。
(2) copy test.sh /bin/ 下。
(3) crontab -e 编辑定时执行任务的时间。例如 :每天早上六点十分执行test.sh 脚本。
则进入vi编辑模式 ,10 6 * * * test.sh ,保存后退出。则每天早上六点十分系统会自动
运行这一脚本。