crontab 是制定计划任务的程序。
crond 守护进程常常是在系统启动时由 init 进程启动的。
每个 crontab 条目包含六个字段:
1.分钟
2.小时
3.日
4.月
5.周
6.由shell执行的命令
分钟和小时的范围分别是 0-59 和 0-23
日和月的范围分别是 1-31 和 1-12
星期的范围是 0-7,0和7 表示星期日。星期也可以指定为 sun、mon、tue 等等。
第 6 个字段包含前 5 个字段之后的所有内容,它是要传递给 sh 的字符串。百分号(%)将转换为空行,所以如果要使用 % 或其他任何特殊字符,就要在前面加上反斜线(\)。第一个 % 之前的一行传递给 shell,这个 % 之后的所有行都作为标准输入传递。
各个与时间相关的字段可以指定一个单独的值、值的范围(比如 0-10 或 sun-wed)或者以逗号分隔的单独值和范围列表。清单 2 给出一个 crontab 条目示例。
example:
0,10,30 20-25 * 10 mon-fri /home/admin/mycrontest.sh
*/2,可以表示频率,每2天或者每2小时
用户crontab任务
用 crontab 命令创建的 crontab 存储在 /etc/spool/cron 下面的一个子目录中,这个子目录与创建 crontab 的用户同名.
系统crontab任务
除了
ar/spool/cron 中的用户 crontab 文件之外,cron 还会检查 /etc/crontab 文件和 /etc/cron.d 目录中的文件。在这些系统 crontab 中,在第五个时间字段(星期)和命令之间增加了一个字段。这个字段指定哪个用户应该运行这个命令,一般情况下是根用户。清单 4 给出一个 /etc/crontab 文件示例。
阅读(1094) | 评论(0) | 转发(0) |