Linux(九):定时任务 crontab
2019-08-11 本文已影响0人
末池桑
crontab 命令在 Linux 中是用做任务调度使用的,指的就是让系统定时的去调用某些指令或者某个脚本,完成我们想要做的一些定时执行的任务,有许多的应用场景,比如说数据库备份、周期性的日子分析,对于运维人员来说熟练掌握这个命令是十分重要的。
一、定时任务用法
crontab [参数]
-e 编辑 crontab 定时任务
-l 查询 crontab 任务
-r 删除当前用户所有的 crontab 任务
快速使用例子
- 使用命令 : crontab -e ,
- 输入想要定时执行的命令(/1 * * * * date >> /home/guan/log.txt),Deepin 默认用 nano 编辑器打开,其他的发行版(CentOS)也有用 vim 打开的,如下图:

- 过段时间后执行 cat /home/guan/log.txt ,结果如下:

二、参数说明
- 1. 前 5 个 * 号说明:
第一个 * : 一小时中的哪一分钟(0~59)
第二个 * : 一天中的哪一个小时(0~23)
第三个 * : 一个月中的哪一天(1~31)
第四个 * : 一年当中的那一个月(1~12)
第五个 * : 一周当中的星期几(0~7,0、7都代表星期日)
- 2. 特殊符号说明:
* : 表示任何时间端都执行
, : 表示不连续的时间里执行,例如 (10 2,4 * * *) 代表每天的 2点10 ,4点10分执行。
- : 表示连续的时间范围内执行,例如 (0 2 * * 1-3) 代表每周一到周三的2点0分执行
*/n : 表示隔多长时间执行一次,例如 (*/1 * * * *) 代表每隔一分钟执行
注意:(0 0 3,6 * 3) 表示每个月 3 号、6 号 ,每周 3 的 0 点 0 分都会执行。所以星期几和每月几号不要同时出现,定义的单位都是天,但是含义却不一样,容易混淆。
三、定时执行脚本任务
- 随意编写一个脚本 test.sh ,内容如下:
#!/bin/bash
date>>/home/guan/test.log
- 添加 test.sh 的可执行权限:
chmod +x test.sh
- 添加定时任务
crontab -e # 编辑定时任务
# 添加如下定时任务,使用脚本的方法
*/1 * * * * /home/guan/ssh脚本/test.sh
- 结果如下图:
