• Linux之crontab 定时器的使用


    Linux之crontab 定时器的使用

    linux 系统则是由 cron (crond) 这个系统服务来控制的。Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的。另 外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 crontab 命令。

    crontab命令:

    crontab -l        查看定时任务

    crontab -l -u username列出username的所有调度任务

    crontab -e        编辑定时任务

    crontab -r        删除所有的定时任务

    crontab格式:

    每一条crontab都有六个参数,分 时 日 月 周 命令。

     分钟 

     小时 

     天数 

     月数 

     周数 

     minute 

     hour 

     day 

     month 

     week 

    每个字段代表的含义如下:

    Minute          每个小时的第几分钟执行该任务

    Hour            每天的第几个小时执行该任务

    Day             每月的第几天执行该任务

    Month           每年的第几个月执行该任务

    DayOfWeek       每周的第几天执行该任务

    crontab注意:在 crontab 命令中只有 “绝对路径”,不存在相对路径,故执行任何命令都需要写绝对路径

    实例讲解:

    2 5 1 3 * ls                  3月1日5点2分执行ls命令

    特殊用法:

    不连续时间,如每月10号与20号都需要执行ls命令

    * * 10,20 * * ls

    连续时间,如3月8-15号每天都要执行ls命令:

    * * 8-15 3 * ls

    间隔式,如每俩分钟执行ls命令:

    */2 * * * * ls

    crontab运行:

    systemctl start crond //启动服务

    systemctl stop crond //暂停服务

    systemctl restart crond //重启服务

    systemctl status crond // 查看服务状态

    systemctl reload crond //重新载入配置

    注意:这里写的是centos7的命令,更老的版本或者其他linux版本如果没有systemctl命令的话,可以测试service命令。

    补充:

    1. linux

    看 /var/log/cron.log这个文件就可以,可以用tail -f /var/log/cron.log观察

    2. unix

    在 /var/spool/cron/tmp文件中,有croutXXX001864的tmp文件,tail 这些文件就可以看到正在执行的任务了。

    3. mail任务

    在 /var/spool/mail/root 文件中,有crontab执行日志的记录,用tail -f /var/spool/mail/root 即可查看最近的crontab执行情况。

    通过脚本来添加定时任务时,使用命令进入编辑在脚本中无法实现。这里可以直接修改文件(/var/spool/cron/username)

  • 相关阅读:
    【并查集】连接格点C++
    【拓扑排序】威虎山上的分配C++
    CF39D Cubical PlanetC++
    【拓扑排序】排队C++
    [USACO09OCT]Invasion of the Milkweed】乳草的侵占C++
    免杀常用手段
    DELPHI 线程类
    动态注册OCX
    DELPHI 常用文件路径
    套接字(TCP)
  • 原文地址:https://www.cnblogs.com/52why/p/12362784.html
Copyright © 2020-2023  润新知