Linux 网管 123 --- 第9章. 各种杂项管理工作 -4.使用 Cron 及 C
Linux 网管 123 --- 第9章. 各种杂项管理工作 -4.使用 Cron 及 C,Linux 网管 123 --- 第9章. 各种杂项管理工作 -4.使用 Cron 及 C
像大部分 Linux 使用者一样,您可能需要在某时候进行重性工作的排程。这类工作可能频繁到几
分钟一次,也可能一年只有一次。这些工作可以使用 ``cron'' 工具完成。
cron 工具在 Linux 上的应用和和在其他 Unix 上所应用的非常相似。然而, Red Hat 加上了一点
和其他 Linux 发行版不同的工作排程方法 。在其他的发行版,排程资讯位於系统的 ``crontab''档
(位在 ``/etc/'' 目录),使用下面的格式 :
minute hour day month year command
您可以指定整数的时间要素 (例如 . 1 到 12 表示从一月到十二月),或者用``*'' 符号作为万用字元
指定一个或更多的要素 (例如 . * 在月的要素部分表示指令会在每月的特定日期及时间执行)。这里是
一些例子:
# Mail the system logs at 4:30pm every June 15th.
30 16 15 06 * for x in /var/log/*; do cat ${x} | mail postmaster; done
# Inform the administrator, at midnight, of the changing seasons.
00 00 20 04 * echo 'Woohoo, spring is here!'
00 00 20 06 * echo 'Yeah, summer has arrived, time to hit the beach!'
00 00 20 10 * echo 'Fall has arrived. Get those jackets out. :-('
00 00 20 12 * echo 'Time for 5 months of misery. ;-('
注意该指令会输出到一个标准出口 (亦即. 一个终端机 ),像是上面使用 ``echo'' 的例子会将输出寄
给 ``root'' 帐号。如果您想要避免它,只要像下面将输出导引到一个空的设备 :
00 06 * * * echo 'I bug the system administrator daily at 6:00am!' /dev/null
在多出的标准 ``crontab'' 项目, Red Hat 加上了一些目录 :
/etc/cron.hourly/
/etc/cron.daily/
/etc/cron.weekly/
和他们的名称所建议的一样,可执行档可以放在任何这些目录,并且将会每小时,每日及每执行。这节
省了一些设定频繁工作的时间 ;只要将可执行的 script 或程式 (或到任何其他储存媒体的符号连结)放到
合适的目录内,就可以不管他们了