韩顺平Linux 13. 定时任务调度

韩顺平Linux 13. 定时任务调度可以检测 atd 是否在运行

大家好,欢迎来到IT知识分享网。

1. croud 任务调度

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

    韩顺平Linux 13. 定时任务调度

  • 快速入门
    • 设置任务调度文件: /etc/crontab
    • 设置个人任务调度。执行crontab -e命令
    • 接着输入任务到调度文件
    • 如 : */1 * * * * Is -l /etc/ > /tmp/to.txt
    • 意思说每小时的每分钟执行ls -l /etc/ > /tmp/to.txt命令
  • 参数说明
    • 五个占位符的说明
    • 韩顺平Linux 13. 定时任务调度
    • 韩顺平Linux 13. 定时任务调度

    韩顺平Linux 13. 定时任务调度

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

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

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

步骤:

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

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

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

  • 案例3: 每天凌晨2:00 将mysql数据库 testdb ,备份到文件中。提示: 指令为

0 2 * * * mysqldump -u root -p密码 数据库 >> /home/db.bak

  • crond 相关指今:
    • conrtab -r : 终止任务调度
    • crontab -: 列出当前有那些任务调度
    • service crond restart [重启任务调度
  • 韩顺平Linux 13. 定时任务调度

2. at定时任务

  • 基本介绍

韩顺平Linux 13. 定时任务调度

  1. at命令是一次性定时计划任务,at的守护进程atd会以后台模式运行,检查作业队列来运行
  2. 默认情况下,atd守护进程每60秒检查作业队列,有作业时,会检查作业运行时间,如果时间与当前时间匹配,则运行此作业。
  3. at命令是一次性定时计划任务,执行完一个任务后不再执行此任务了
  4. 在使用at命令的时候,一定要保证atd进程的启动,可以使用相关指今来查看

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

  • at 命令格式
    • at [选项] [时间]
    • Ctrl + D 退出 at 命令输入
  • at 命令选项

韩顺平Linux 13. 定时任务调度

  • at 时间定义
  • at指定时间的方法 :
  1. 接受在当天的hh:mm(小时:分钟 )式的时间指定。假如该时间已过去,那么就放在第二天执行。 例如 : 04:00
  2. 使用midnight (深夜 ),noon (中午),teatime( 饮茶时间,一般是下午4点 等比较模糊的词语来指定时间。
  3. 采用12小时计时制,即在时间后面加上AM (上午)或PM (下午)来说明是上午还是下午。 例如: 12pm
  4. 4.指定命令执行的具体日期,指定格式为month day (月日)或mm/dd/yy ( 月/日/年)或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 ( 明天)来指定完成命令的时间。
  • 应用实例
    • 案例1:2天后的下午5点执行/bin/ls/home

韩顺平Linux 13. 定时任务调度

    • 案例2:atq命今来查看系统中没有执行的工作任务
    • 案例3:明天17点钟,输出时间到指定文件内比如/root/date100.log

韩顺平Linux 13. 定时任务调度

    • 案例4:2分钟后,输出时间到指定文件内比如/分钟后,输出时间到指定文件内比如/date200.log
    • 案例5:删除已经设置的任务,atrm 编号
    • 案例6:hanshunp 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/153530.html

(0)
上一篇 2025-03-03 16:25
下一篇 2025-03-03 16:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信