• 【Linux】使用crontab,让linux定时执行shell脚本


    阅读目录

    • 1. cron服务【Ubuntu环境】
    • 2. crontab用法
    • 3. vim编辑crontab文件
    • 4.Cron各项描述
    • 5.例子解释

    Linux中,周期执行的任务一般由cron这个守护进程来处理。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。cron的配置文件称为“crontab”,是“cron table”的简写。

    1. cron服务【Ubuntu环境】

    查看cron状态

    sudo  service cron status

    开启cron

    sudo /etc/init.d/cron start

    关闭cron

    sudo /etc/init.d/cron stop

    重启cron

    sudo /etc/init.d/cron restart

    2. crontab用法

    crontab –e : 修改 crontab 文件,如果文件不存在会自动创建。  (这样可以编辑模式打开个人的crontab配置文件,然后加入一下这行:0 0 * * * /home/linrui/XXXXXXXX.sh

    这将会在每天凌晨运行 指定的.sh文件)

    crontab –l : 显示 crontab 文件。 
    crontab -r : 删除 crontab 文件。
    crontab -ir : 删除 crontab 文件前提醒用户。

     在crontab文件中写入需要执行的命令和时间,该文件中每行都包括六个域,其中前五个域是指定命令被执行的时间,最后一个域是要被执行的命令。每个域之间使用空格或者制表符分隔。格式如下:

    minute hour day-of-month month-of-year day-of-week commands

    合法值为:00-59 00-23 01-31 01-12 0-6 (0 is sunday) 

    除了数字还有几个特殊的符号:"*"、"/"和"-"、","

    • *代表所有的取值范围内的数字
    • "/"代表每的意思,"/5"表示每5个单位
    • "-"代表从某个数字到某个数字
    • ","分开几个离散的数字

    :commands 注意以下几点

    • 要是存在文件,要写绝对路径
    • 即使是打印也不会显示在显示屏,在后台运行,最好重定向日志

    3. 使用vim编辑crontab文件

    EDITOR=vi
    export EDITOR
    crontab -e

    4. Cron 各项的描述

    以下是 crontab 文件的格式:

    {minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script} 
    o minute: 区间为 0 – 59 
    o hour: 区间为0 – 23 
    o day-of-month: 区间为0 – 31 
    o month: 区间为1 – 12. 1 是1月. 12是12月. 
    o Day-of-week: 区间为0 – 7. 周日可以是0或7.

    5. 例子解释

    1 0 * * * /home/lenovosh/work/bianyi.sh lumus nedp

    在每天凌晨00:01运行 指定的bianyi.sh脚本文件

    59 23 * * 1,2,3,4,5 /home/lenovosh/work/bianyi.sh lumus nedp

    在每个工作日23:59运行 指定的bianyi.sh脚本文件,或者如下写法

    59 23 * * 1-5 /home/lenovosh/work/bianyi.sh lumus nedp

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    */1 * * * * /home/lenovosh/work/bianyi.sh lumus nedp

    每分钟运行 指定的bianyi.sh脚本文件

    10 14 1 * * /home/lenovosh/work/bianyi.sh lumus nedp

    每个月的1号14:10运行 指定的bianyi.sh脚本文件

    1 0 * * 1,3,5 /home/lenovosh/work/bianyi.sh lumus nedp

    每周一、三、五凌晨00:01运行 指定的bianyi.sh脚本文件

    具体想看bianyi.sh(编译脚本)怎么实现,请看下一篇博客!

  • 相关阅读:
    jumpserver的安装
    安装iostat 命令
    zabbix配置server,proxy,agent架构
    RGB颜色对照表
    【ZYNQ-7000开发之九】使用VDMA在PL和PS之间传输视频流数据
    基于AXI VDMA的图像采集系统
    图像采集调试总结
    DDR3调试总结
    内存系列二:深入理解硬件原理
    在嵌入式设计中使用MicroBlaze(Vivado版本)
  • 原文地址:https://www.cnblogs.com/wucaiyun1/p/6866730.html
Copyright © 2020-2023  润新知