第11章 Linux 实操篇-定时任务调度

11.1 crond 任务调度

crontab  进行定时任务的设置

11.1.1 概述

任务调度:   是指系统在某个时间执行的特定的命令或程序
任务调度分类:  1.系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等
个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库的备份。示意图

11.1.2 基本语法

 crontab [选项]

11.1.3 常用选项

11.1.4 快速入门

设置任务调度文件:   /etc/crontab

设置个人任务调度。执行  crontab   -e 命令。  接着输入任务到调度文件

如: */1**** ls   -l   /etc/   >   /tmp/to.txt

意思说每小时的每分钟执行  ls  -l   /etc/  > /tmp/to.txt  命令 

》参数细节说明

5个占位符的说明

 》特殊符号说明

 》特殊时间执行案列

11.1.5 应用实例

》案例1  :  每隔1分钟,就将当前的日期信息,追加到/tmp/mydate文件中

       */1**** date  >>  /tmp/mydate

》案例2  :  每隔1分钟,将当前日期和日历都追加到  /home/mycal  文件中

步骤: (  写脚本  ---》 给权限  ---》 crontab  )

(1) vim /home/my.sh 写入内容 date >> /home/mycalcal >> /home/mycal

(2) 给 my.sh 增加执行权限,chmod u+x /home/my.sh

(3) crontab -e      增加           */1****/home/my.sh

》案例3  :  每天凌晨2:00 将 mysqI 数据库 testdb ,备份到文件中。

提示 : 指令为   mysqldump  -u   root  -p密码    数据库  >>   /home/db.bak

步骤(1)   crontab  -e

步骤(2)   0 2 * * * mysqldump -u root -proot testdb  >  /home/db.bak

11.1.6 crond相关指令

conrtab  - r      :   终止任务调度
crontab  - l      :    列出当前有那些任务调度
service crond restart    [重启任务调度]

11.2 at 定时任务

11.2.1 基本介绍

(1)  at 命令是一次性定时计划任务,at 的守护进程 atd 会以后台模式运行,检查作业队列来运行。

(2)  默认情况下,atd 守护进程每60秒检查作业队列,有作业时,会检查作业运行时间,如果时间与当前时间匹配,则运行此作业。

(3)  at命令是一次性定时计划任务,执行完一个任务后不冉执行此任务了

(4)  在使用at命令的时候,一定要保证 atd 进程的启动,可以使用相关指令来查看

         ps -ef  |  grep   atd     // 可以检测atd是否在运行

(5)  画一个示意图 

 

11.2.2 at命令格式

at  [选项]   [时间]

Ctrl + D   结束at命令的输入,输入两次

11.2.3 at命令选项

 

11.2.4 at 时间定义

》 at指定时间的方法:

(1)  接受在当天的hh:mm (小时:分钟)式的时间指定。假如该时间已过去,那么就放在第二天执行。 例如: 04:00

(2)  使用 midnight (深夜),noon (中午),teatime (饮茶时间一般是下午4点)等比较模糊的词语来指定时间。

(3)  采用12小时计时制,即在时间后面加上AM (上午)或PM (下午)来说明是上午还是下午。例如: 12pm

(4)  指定命令执行的具体日期,指定格式为month day (月日)或mm/ddyy (月/日/年)或dd.mm.yy (日.月年),指定的日期必须跟在指定时间的后面。例如: 04:00 2021-03-1

(5)  使用相对计时法。指定格式为 : now+count time-units,now就是当前时间,time-units是时间单位,这里能够是minutes(分钟)、hours (小时)、days (天)、weeks (星期)。count是时间的数量,几天,几小时。例如: now + 5 minutes

(6)  直接使用today(今天)、tomorrow(明天)来指定完成命令的时间。

11.2.5 应用实例

案例1  : 2天后的下午5点执行   /bin/Is  /home

 案例 2 : atq 命令来查看系统中没有执行的工作任务

案例3:明天17点钟,输出时间到指定文件内 比如  /root/date100.log

 案例4 : 2分钟后,输出时间到指定文件内 比如  /root/date200.log

 案例5  :  删除已经设置的任务, atrm 编号

   atrm 4      // 表示将iob队列,编号为4的iob删除

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值