Linux任务调度
1、crond任务调度
crontab进行定时任务的设置
任务调度:是指系统在某个时间执行的特定的命令或程序
任务调度分类:1、系统工作,有些重要的工作必须周而复始的执行,如病毒扫描等
2、个别用户工作:个别用户可能希望执行某些程序,如对mysql数据库的备份
语法:crontab 选项
常用选型
- -e 编辑crontab定时任务
- -l 查询crontab任务
- -r 删除当前用户所有的crontab任务
范例:设置任务调度文件:/etc/crontab
设置个人任务调度:执行crontab -e 命令
接着输入任务到调度文件
如:*/1 **** ls -l /etc/ > tmp/to.txt
意思是说每小时每分钟执行ls -l /etc/ >tmp/to.txt命令
参数细节说明(5个占位符说明)
第一个* :一小时当中的第几分钟
第二个* :一天当中的第几个小时
第三个* :一月当中的第几天
第四个* :一年当中的第几个月
第五个* :一周当中的星期几
特殊符号
- “”:代表任何时间,比如第一个“*”就代表一小时中的每分钟都执行一次的意思
- ,:代表不连续的时间,比如0 8,12,14 * * *就代表在每天的8点0分,12点0分,14点0分执行
- -:代表连续的时间范围,比如0 5 * * 1-6 代表在周一到周六的凌晨5点0分执行
- /n :代表每隔多久执行一次。比如*/10 * * * * 代表每隔10分钟执行一次
2、任务调度实例
范例:每隔一分钟,就将当前的日期信息,追加到/home/zby/mydate文件中
- 先编写一个文件 /home/zby/task1.sh(date>> /home/zby/mydate)
- chmod 744 task1.sh 给task1.sh一个可执行权限
- crontab -e
- */1 * * * * /home/zby/task1.sh
mydate 文件中的内容
任务调度相关指令:
- crontab -l :列出当前有哪些调度任务
- crontab -r :终止任务调度
- service crond restart 重启任务调度