cron介绍
我们经常使用的是crontab命令是cron table的简写,它是cron的配置文件,也可以叫它作业列表,我们可以在以下文件夹内找到相关配置文件。
- /var/spool/cron/ 目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名
- /etc/crontab 这个文件负责调度各种管理和维护任务。
- /etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本。
- 我们还可以把脚本放在/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly目录中,让它每小时/天/星期、月执行一次。
常用命令
systemctl status crond 查看crond服务状态
systemctl restart crond 重启crondt服务
crontab -e 编辑工作表
crontab -l 查看列表任务
语法:
* * * * * //分 时 日 月 周
第1列表示分钟00~59 每分钟用*或者 */1表示第2列表示小时00~23(0表示0点)
第3列表示日期01~31
第4列表示月份01~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
操作符
* 取值范围内所有数字
/ 每过多少个数字
- 数字区间
, 散列数字
设置重启docker任务实例
* * * * * systemctl restart docker #每分钟执行一次重启docker
2,10 * * * * systemctl restart docker #每小时2分和10分 重启docker
10 1 1,10,22 * * systemctl restart docker #每月1、10、20号1:10分重启
0,30 18-23 * * * systemctl restart docker #每天18-23点每本个小时重启一次服务
*/1 * * 7-12 * systemctl stop docker #7-12月每天每分钟停止docker
设置指定时间使用crontab暂停任务,防止服务器重启恢复,可设置月份区间来使用。
* * * 6-12 * systemctl stop docker #可实现5月31号后停止服务,防止服务器重启后任务恢复
设置定时执行脚本
chmod +755 xx.sh 给脚本增加执行权限
注意增加环境变量,后面测试再总结