Linux | 任务调度

§1 简介

任务调度:
使系统在某个时间点自动执行特定的程序或脚本
程序/脚本可能是:

  • 系统任务,如病毒扫描
  • 用户任务,如数据库备份,数据拉取

§2 crontab [工作表操作指令]

全称:chronos table 时间表,作业列表

说明:
此指令操作 /var/spool/cron/用户名 文件,任务调度的相关文件/目录如下:

  • /var/spool/cron/用户名 存放用户名的任务,每个用户均可通过 crontab 指令操作
  • /etc/crontab 只有root用户可以操作
  • /etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本,还可以把任务细分至
    • /etc/cron.hourly 每小时任务
    • /etc/cron.daily 每日任务
    • /etc/cron.weekly 每周任务
    • /etc/cron.monthly 每月任务

指令:crontab [-u 用户名] 操作标记
说明:

  • -u 用户名可以省略,此时默认当前用户
  • 操作标记
    • -e:edit, 进入当前时间表并编辑(默认 VI),通过cron表达式+任务添加任务
    • -l:list,列出当前时间表
    • -r:remove,删除当前时间表

§3 cron 表达式

cron 表达式有5个标记位,依次是:

  • 分钟,0-59
  • 小时,0-23
  • 日,1-31
  • 月,1-12
  • 星期,0-6,0 表示星期日

每一位可以使用下列元字符:

  • * 表示当前位所有允许的值,如 * * * * * 表示每分钟都执行任务
  • - 表示范围内,如 0-9 * * * * 表示每小时的前 10 分钟执行任务
  • , 表示散列枚举,如 0,30 * * * * 表示每小时的 0 分和 30 分执行任务
  • / 表示间隔,如 */5 * * * * 表示马上执行任务,随后每 5 分钟执行一次

区别
Linux 中 crontab 的 cron 表达式功能较弱,不支持秒和年,以及对元字符 ?#LW 的支持
详情参考 cron表达式详解
当使用 6/7 位版的 cron 表达式时,系统提示如下图:
在这里插入图片描述

常用 cron 表达式

cron 表达式释义
* * * * *每分钟一次
0,30 * * * *每小时0分,30分执行
3,15 8-11 * * *8点到11点的第3和第15分钟执行
3,15 8-11 */2 * *每两天,8点到11点的第3和第15分钟执行
0 8-11 * * 0每周日,8-11点整执行
0 */1 * * *每小时执行
0 23-7/1 * * *晚23点到早7点整,每小时执行

crontab 示例
在这里插入图片描述

§4 重启调度

指令:service crond restart


上述内容参考下面链接部分内容
Linux Crontab 定时任务

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值