通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。
1. 命令参数
-u user
:用来设定某个用户的crontab服务;
file
:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab。
-e
:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。
-l
:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。
-r
:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。
-i
:在删除用户的crontab文件时给确认提示。
2. 命令格式
- 第1列分钟0~59
- 第2列小时0~23(0表示子夜)
- 第3列日1~31
- 第4列月1~12
- 第5列星期0~7(0和7表示星期天)
- 第6列要运行的命令
3. 举例
1 2
| 3,15 8-11 * * * myCommand
|
1 2
| 3,15 8-11 */2 * * myCommand
|
4. 特殊触发条件
条件 |
意义 |
等同写法 |
@reboot |
启动时执行一次 |
无 |
@yearly |
每年执行一次 |
0 0 1 1 * |
@annually |
同@yearly |
0 0 1 1 * |
@monthly |
每月执行一次 |
0 0 1 * * |
@weekly |
每周执行一次 |
0 0 * * 0 |
@daily |
每天执行一次 |
0 0 * * * |
@midnight |
同@daily |
0 0 * * * |
@hourly |
每小时执行一次 |
0 * * * * |