crontab 是用来定期执行程序的命令

当系统安装完成之后,默认就会启动次任务调度命令

crond 服务会每分钟去检查是否有工作需要执行,如果有则会立即执行

语法

1
crontab [ -u user ] file

1
crontab [ -u user ] { -l | -r | -e}
说明

-u user 是指设定 user 用户的时程表,必须要有设置他人时程表的权限,比如 root 就能设置所有人的;如果不带此参数 则设置自己的时程表

参数说明

-e 执行文字编辑器来设定时程表,默认时vi

-r 删除目前所有的时程

-l 列出目前的时程

时间格式说明

1
2
3
4
5
6
7
8
*    *    *    *    *
- - - - -
| | | | |
| | | | +----- 星期中星期几 (0 - 7) (星期天 为0)
| | | +---------- 月份 (1 - 12)
| | +--------------- 一个月中的第几天 (1 - 31)
| +-------------------- 小时 (0 - 23)
+------------------------- 分钟 (0 - 59)
实例
1
2
SHELL=/bin/bash
0 3 * * 1 cd /home/oracle/cron/ && ./oracle_backup.sh # 每周一早上三点 执行oracle_backup.sh这个脚本
注意

当程序在你所指定的时间执行后,系统会寄一封信给你,显示该程序执行的内容,若是你不希望收到这样的信,请在每一行空一格之后加上 > /dev/null 2>&1 即可