1.原理示意图
image.pngimage.png
2.概述
任务调度:是指系统在某个时间执行的特定的命令或程序
任务调度分类:
- 1)系统工作:有些重要的工作必须周而复始地执行,
- 2)个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库的备份。
3.基本语法
crontab [选项]
常用选项:
选项 | 作用 |
---|---|
-e | 编辑crontab定时任务 |
-l | 查询crontab任务 |
-r | 删除当前用户所有的crontab任务 |
4.快速入门
- 4.1任务的要求
设置任务调度文件:/etc/crontab
设置个人任务调度 执行 crontab -e 命令。
接着输入任务调度文件
如:*/1 * * * * ls -l /etc/ > /tmp/to.txt
意思说每小时的每份执行 ls -l /etc/ > /tmp/to.txt 命令 - 4.2步骤如下
1)crontab -e
2)输入:*/1 * * * * ls -l /etc/ > /tmp/to.txt
3)保存退出
4)在每分钟会自动调用 ls -l /etc/ > /tmp/to.txt -
4.3定时符号说明:
1)5 个占位符的说明 image.png
2)特殊符号的说明
3)特定时间执行任务案例 image.png
5.案例实践
-
5.1每隔1分钟,就将当前的日期信息,追加到 /root/mydate文件中
1)先编写一个shell文件 /root/myceshi1.sh
date >> /root/mydate
2)给myceshi1.sh一个可执行的权限
chom 744 myceshi1.sh
3)crontab -e 命令
4)输入:*/1 * * * * /root/myceshi1.sh
5)成功 -
5.2每个1分钟,将当前的日期和日历追加到/root/mycal文件
1)先编写一个shell文件 /root/myceshi2.sh
date >> /root/mycal
cal >> /root/mycal
2)给myceshi1.sh一个可执行的权限
chom 744 myceshi2.sh
3)crontab -e 命令
4)输入:*/1 * * * * /root/myceshi2.sh
5)成功 -
5.3 每天凌晨2:00点将mysql数据库testdb,备份到mydb.bak
1)先编写一个文件 /root/myceshi3.sh
/usr/local/mysql/bin/mysqldump -u -root -proot testdb > /root/mydb.bak
2)给myceshi3.sh一个可执行权限
chmod 744 /root/myceshi3.sh
3)crontab -e
4)输入 0 2 * * * 保存
5)成功
6.crond相关指令
1)crontab -r :终止任务调度
2)crontab -e :编辑任务调度
3)crontab -l :列出当前有的任务列表
4)service crond restart [重启任务调度]
网友评论