十六、Linux定时任务调度

crontab 进行定时任务的设置
- 任务调度:指系统在某个时间执行的特定命令或程序
- 任务调度分类:1、系统工作 ,有些重要的工作必须周而复始的执行,如病毒扫描等
2、个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库的备份
- 基本语法
crontab [选项]
- 常用选项

快速入门案例:
设置任务调度文件:/etc/crontab
设置个人任务调度,执行crontab -e命令
接着输入任务到调度文件
如:/1 * ***ls /etc/ > /tmp/to.txt命令
意思是每个小时的每分钟执行ls -l /etc/ > /tmp/to.txt
步骤如下:
crontab -e
*/ 1 * * * * ls /etc/ > /tmp/to.txt
保存退出后生效
每分钟都会自动调用ls /etc/ > /tmp/to.txt
参数细节说明:



任务调度应用实例:
(1)、每隔一分钟就将当前的日期信息追加到/tmp/mydate文件中
第一步:先编写一个文件/home/mytask1.sh
date>> /tmp/mydate
第二步:给mytask1.sh可执行权限 chmod 744 mytask1.sh
第三步:crontab -e
第四步: * /1 * * * * /home/mytask1.sh
第五步:保存生效
(2)、每隔一分钟,将当前日期和日历都追加到/home/mycal文件中
第一步:先编写一个文件/home/mytask2.sh
vim /home/mytask2.sh
date>>/tmp/mycal
cal>>/tmp/mycal
第二步:给mytask2.sh可执行权限 chmod 744 mytask2.sh
第三步:crontab -e
第四步: * /1 * * * * /home/mytask2.sh
第五步:保存生效
(3)、每天凌晨2:00将mysql数据库testdb备份到文件中mydb.bak
第一步:先编写一个文件/home/mytask3.sh
/usr/local/mysql/bin/mysqldump -u root -p root testdb > /tmp/mydb.bak
第二步:给mytask3.sh可执行权限 chmod 744 mytask3.sh
第三步:crontab -e
第四步: 0 2 * * * /home/mytask3.sh
第五步:保存生效
crond相关指令:
(1)、crontab -r:终止任务调度
(2)、crontab -l:列出当前有哪些任务调度

浙公网安备 33010602011771号