Linux定时任务调度

时间:2021-02-10 08:07:16

⒈概述

  任务调度:是指系统在某个时间执行的特定的命令或程序

  分类:1)系统任务:有些重要的工作必须周而复始的执行,例如病毒扫描等

     2)用户任务:个别用户可能希望定时执行某些程序,例如mysql定时备份

⒉基本语法

  crontab [选项]

⒊常用选项

  -e:编辑crontab定时任务

  -l:查询crontab任务

  -r:删除当前用户所有的crontab任务

⒋案例步骤

  1)crontab -e

  2)*/1 * * * * ls -l /etc >> /tmp/to.txt

  3)保存退出

  4)每一分钟都会自动的调用 ls-l /etc >> /tmp/to.txt

⒌5和占位符*的说明

项目 说明 范围
第一个* 分钟 0-59
第二个* 小时 0-23
第三个* 1-31
第四个* 月份 1-12
第五个* 一周中的星期几 0-7(0和7都代表星期日)

⒍特殊符号的说明

* 代表任何时间,比如第一个占位符为“*”则代表每小时的每分钟都执行一次
代表不连续的时间,比如“0 8,12,16 * * *”命令,代表在每天的8点0分,12点0分,16点0分都执行一次命令
- 代表连续的时间范围,比如“0 5 * * 1-6”命令,代表在周一到周六的5点0分都执行
*/n 代表每隔多久执行一次,比如“*/10 * * * *”命令,代表每隔10分钟就执行一遍命令

⒎特定时间执行任务实例

命令 含义
45 22 * * * 在22点45分执行命令
0 17 * * 1 每周一的17点0分执行命令
0 5 1,15 * * 每月1号和15号的5点0分执行命令
40 4 * * 1-5 每周一到周五的4点40分执行命令
*/10 4 * * * 每天的4点,每隔10分钟执行一次命令
0 0 1,15 * 1

每月1号和15号,每周一的0点0分都会执行命令。

注意:星期几和几号最好不要同时出现,因为他们定义的都是天,非常容易让管理员混乱

⒏任务调度相关指令

  1)crontab -r:终止任务调度

  2)crontab -l:列出当前有那些任务调度

  3)service crond restart:重启任务调度