zoukankan      html  css  js  c++  java
  • Linux中计划任务、周期性任务设置

    Linux中计划任务、周期性任务设置

    计划任务:指在未来的特定时间里,执行一次某一特定任务。当然,如果同一任务需要在不同时间点执行执行两次、三次或多次,可以视为多个一次看待。

    周期性任务:指某一任务需要周期性的执行。周期性可以是以分、时、天等为单位,但又不限于这些单位。

    常用于执行计划任务的命令——at, batch, 与周期性任务相关的的命令crontabs。

    1.at命令和batch命令的区别。

      at命令旨在特定的之间执行任务;batch命令设置的任务由系统选择空闲时间去执行,空闲时间默认为cpu利用率小于0.8的时候

    2.at命令 

    格式  
        at [option] TIME
    
    选项
    
    -l     atq命令的别名,显示用户的计划任务   
    -d     atrm命令的别名,清空计划任务
    -c     查看特定的计划任务
    -f FILE   从文件中读取计划任务命令 

    TIME,有如下几种格式
       
     HH:MM [YYYY-mm-dd]
        noon, midnight, teatime
        tomorrow
        now+#{minutes,hours,days, weeks}

    注:batch命令使用方法和at类似,这里不再赘述
     

    3. crontabs命令

    a. 与cron服务相关的程序包有三个:

      cronie:主程序包,提供crond守护进程及相关辅助工具

      cronie-anacron:cronie的补充程序,用于监控cronie任务执行

      crontabs: 包含CentOS提供系统维护任务

    b. 周期任务分类。根据用户级别,可分为系统周期任务和用户周期任务。

    c. 系统周期任务一般直接直接修改/etc/crontab文件,即可配置周期任务, 可查看该文件中的内容

    [root@vathe-pc tmp]#cat /etc/crontab    
    SHELL=/bin/bash             
    PATH=/sbin:/bin:/usr/sbin:/usr/bin       # 环境变量路径
    MAILTO=root                    # 周期任务执行之后,邮件接受者
    HOME=/
    
    # For details see man 4 crontabs
    
    # Example of job definition:          #  计划任务书写格式
    # .---------------- minute (0 - 59)     
    # |  .------------- hour (0 - 23)
    # |  |  .---------- day of month (1 - 31)
    # |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
    # |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
    # |  |  |  |  |
    # *  *  *  *  * user-name command to be executed

      d. 周期任务中,通过/etc/crontab文件可知,有5个与时间相关的选项,这些选项有如下规则:

    a.特定值 #
      例如: 5    或   20

    b.可使用*表示任意值
    c. 离散值用逗号隔开
        例如: 5,6,2   或者 0,3
    d. 连续值用短折线“-”表示

      例如:10-21

    e. 可使用正斜线“/”’步长:
      例如: */3  

      e. 配置用户周期任务时,可以直接使用

        crontabs -e

         编辑相关配置文件,文件格式和/etc/crontab类似,只是不需要填写user-name选项。其他选项:

    crontab   -e     直接编辑文件
              -l  查看周期任务
              -r  清空周期任务  -i  交互模式
         -u USER: 仅root可运行,指定以特定用户身份执行该周期任务

      f. 用户周期任务,有自己独有的时间格式, @CMD——可代表特定周期时间

    @rebootRun once after reboot.
    @yearly0 0 1 1 *
    @annually0 0 1 1 *
    @monthly0 0 1 * *
    @weekly0 0 * * 0
    @daily0 0 * * *
    @hourly0 * * * *

    4. 相关的配置文件

    /etc/crontab
    /etc/cron.d/ 配置文件
    /etc/cron.hourly/ 脚本
    /etc/cron.daily/脚本
    /etc/cron.weekly/脚本
    /etc/cron.monthly/脚本

    /etc/anacrontab      负责执行以上/etc/cron.hourly/等文件中的系统任务

    /var/spool/cron/    用户周期任务配置文件

    /etc/cron.{allow,deny} 用户执行周期任务的权限配置文件

        

      

        

  • 相关阅读:
    【动态规划】数字三角形4
    【动态规划】数字三角形3
    【动态规划】数字三角形2
    被破坏的电力系统
    二分法求函数的零点
    膨胀的木棍
    不重复地输出数
    和为给定数
    乘法游戏
    「AHOI2014/JSOI2014」拼图
  • 原文地址:https://www.cnblogs.com/vathe/p/6829899.html
Copyright © 2011-2022 走看看