zoukankan      html  css  js  c++  java
  • Linux Sever简单笔记(第十堂课)之linux下的任务计划及相关的命令

    10章Linux下的计划任务

    Linux下的计划任务 

    掌握at的使用

    掌握cron的使用

    任务计划

    ⚫ 可以将任何脚本、程序或文档安排在某个最方便的时间运行。“任务计划”在每次启动系统 的时候启动并在后台运行。

    ⚫ 计划可以让任务在每天、每星期、每月或某些时刻(例如系统启动时)运行。

    ⚫ 计划可以是一次性的,也可以是循环执行的。

    计划任务管理 — at 

    at命令

    在指定的日期、时间点自动执行预先设置的一些命令操作,属于一次性计划任务

    服务脚本名称:/usr/lib/systemd/system/atd.service

    设置格式:at [HH:MM] [yyyy-mm-dd]

    启动atd服务

    [root@centos7 ~]# systemctl enable atd

    [root@centos7 ~]# systemctl start atd

    at的时间格式2-1 

    time 的格式是:

    ⚫ hh:mm其中的 hh 为小时,mm 为分钟,

    可以指定 am, pm, midnight, teatime(就是下午 4点钟)等口语词。

    如果超过一天内的时间,则可以用mmddyy 或者 mm/dd/yy 的格式,其中 mm 是月份, dd 是日期,yy 是指年份

    也可以使用像是 now + 时间间隔来弹性指定时间,其中的时间间隔可以是 minutes, hours, days, weeks

    也可指定 today tomorrow 来表示今天或明天。

    at的时间格式2-2 

    time时间示例

    ⚫ at now +2 minutes 两分钟以后

    ⚫ at teatime 下午四点

    ⚫ at 14:00 tomorrow 明天下午两点

    ⚫ at 5pm +2 weeks 两周后的下午5

    ⚫ at 6:00 May 19 2019 20195196

    ⚫ at 6:00 5/19/19 20195196

    ⚫ at 23:59 12/06/2019 201912623:59

    指定日期

     

     

    向后延期

    at使用实例 

    at的应用

    当指定了时间并按下 enter 之后,at 会进入交谈模式并要求输入指令或程序,当你输入完后 按下 ctrl+D 即可完成所有动作,至于执行的结果将会寄回你的帐号中。

    生成at任务

    [root@centos7 ~]# date

    20191020日 星期日 17:07:30 CST

    [root@centos7 ~]# at 17:10 2019-10-20

    at> ps -A > /root/ps1.txt at>

    job 2 at Sun Oct 20 17:10:00 2019

    at使用实例 

    查看任务

    ⚫ at -l

    ⚫ atq

    [root@centos7 ~]# atq

    2 Sun Oct 20 17:10:00 2019 a root 

    删除任务

    ⚫ at -d

    ⚫ atrm

     

     

    删除计划任务

     

    练习

     

    在一个文件中输入一条文字

     

    计划任务管理 —— cron 

    cron命令

    按照预先设置的时间周期(分钟、小时、天……)重复执行用户指定的命令操作,属于周期性 计划任务

    服务脚本名称:/usr/lib/systemd/system/crond.service

    [root@centos7 ~]# systemctl start crond

    [root@centos7 ~]# systemctl enable crond

    配置文件/etc/crontab

    计划任务管理 —— crontab 

    管理cron计划任务

    编辑计划任务:crontab -e [-u 用户名]

    查看计划任务:crontab -l [-u 用户名]

    删除计划任务:crontab -r [-u 用户名]

     

     

     

    crontab任务的配置格式

    crontab任务的配置格式

    时间数值的特殊表示方法

    ⚫ * 表示该范围内的任意时间

    ⚫ , 表示间隔的多个不连续时间点

    ⚫ - 表示一个连续的时间范围

    ⚫ / 指定间隔的时间频率

    应用示例

    ⚫ 0 17 * * 1-5      周一到周五每天17:00

    ⚫ 30 8 * * 1,3,5    每周一、三、五的830

    ⚫ 0 8-18/2 * * *    8点到18点之间每隔2小时的整点

    ⚫ 0 * */3 * *       每隔3天的整点运行

    crontab 应用示例 3-1 

    示例1(root用户) 

    每天早上7:50自动开启sshd服务,2250时关闭

    每隔5天清空一次FTP服务器公共目录/var/ftp/pub

    每周六的7:30时,重新启动httpd服务

    每周一、三、五的17:30时,打包备份/etc/httpd目录

    [root@centos7 root]# crontab -e

    50 7 * * * systemctl start sshd

    50 22 * * * systemctl stop sshd

    51 0 0 */5 * * /bin/rm -rf /var/ftp/pub/*

    30 7 * * 6 systemctl restart httpd

    30 17 * * 1,3,5 /bin/tar jcf httpdconf.tar.bz2 /etc/httpd/

    crontab 应用示例 3-2 

    示例2(jerry用户)

    每周日晚上23:55时将“/etc/passwd”文件的内容复制到宿主目录中,保存为pwd.txt文件

    [root@centos7 root]# crontab -e -u jerry

    55 23 * * 7 /bin/cp /etc/passwd /home/jerry/pwd.txt

    crontab 应用示例 3-3 

    示例3

  • 相关阅读:
    python爬取北京政府信件信息03
    Python3.7 lxml引入etree
    python爬取北京政府信件信息02
    python爬取北京政府信件信息01
    2020.12.2收获
    2020.12.1收获
    2020.11.30收获
    2020.11.29收获
    2020.11.28收获
    2020.11.27收获
  • 原文地址:https://www.cnblogs.com/yxd1308243944/p/13920434.html
Copyright © 2011-2022 走看看