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

一.周期性计划任务:

  服务名:**crond**
  安装crontab:**# yum -y install crontab**
 重启服务:**#systemctl  restart crond**
 #systemctl  enable crond

配置文件: /etc/crondab

二.crontab文件的含义:

     用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:

minute hour day month week command

其中:
minute: 表示分钟,范围【0-59】

hour:表示小时,范围【0-23】

day:表示日期,范围【1-31】

month:表示月份,范围【1-12】

week:范围【0-6】说明:这里0-6表示星期天到星期六

command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。

分 时 日 月 周 命令
0-59 0-23 1-31 1-12 0-6
#crontab -e
规则:

   * :匹配范围内任意时间
   ,:分割多个不连续的时间点
   - :指定连续时间范围
   /n:指定时间频率,每n...

crontab -e

1. 应用举例:

实例1: 32 * 1 * * /bin/echo :
表示在每月一号的每天从0点到23点的每一个32分执行echo命令

实例2: 0,30 18-23 * * * /etc/init.d/smb restart :
表示每天18 : 00至23 : 00之间每隔30分钟重启smb命令

实例3:3,15 8-11 * * * command
表示在上午8点到11点的第3和第15分钟执行命令
实例4:0 */1 * * 1-5 ip addr show
表示在工作日时间内,每小时执行一次“ip addr show”命令

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

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类似,这里不再赘述

注意事项:

  1. 配置用户周期任务时,可以直接使用
     crontabs -e
      编辑相关配置文件,文件格式和/etc/crontab类似,只是不需要填写user-name选项。其他选项:
    crontab -e 直接编辑文件
    -l 查看周期任务
    -r 清空周期任务
    -i 交互模式
    -u USER: 仅root可运行,指定以特定用户身份执行该周期任务

人生充满着期待,梦想连接着未来。

2020年7月17日

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:1 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐