zoukankan      html  css  js  c++  java
  • crontab定时任务

     

    最近工作需要在指定时间运行代码,多次用到Linux的crontab定时任务机制,趁着春节假期做一个梳理总结。

     

    1 crontab管理

    (1)安装

    yum install crontabs

    (2)设置开机启动

    systemctl enable crond

    systemctl start crond

    (3)查看状态

    systemctl status crond.service

    (4)停止

    systemctl stop yum-cron

    systemctl stop crond

    (5)重新加载

    systemctl reload crond.service

    (6)crontab任务管理常用命令

    crontab -l # 列出当前的所有调度任务

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

    crontab -r # 删除所有任务调度工作

     

    2 配置定时任务

    (1)任务配置格式

    crontab任务配置基本格式:

    *   *  *  *  *  [username] command

    在上行配置格式中,每一列(每一个*)代表一个配置项,具体含义如下所示:

    第1列表示分钟0~59 每分钟用 或者 /1 表示,*/5表示每5分钟

    第2列表示小时0~23(0表示0点)

    第3列表示日期1~31

    第4列表示月份1~12

    第5列标识号星期0~6(0,7都可表示星期天)

    第6列要运行的命令或执行shell脚本

    下面我们通过一些实例来说明:

    5      *       *           *     *     ls         #  指定每小时的第5分钟执行一次ls命令
    
    30     5       *           *     *     ls        #  指定每天的 5:30 执行ls命令
    
    30     7       8           *     *     ls        # 指定每月8号的7:30分执行ls命令
    
    30     5       8           6     *     ls        # 指定每年的6月8日5:30执行ls命令
    
    30     5       8           6     *     ls        # 指定每年的6月8日5:30执行ls命令
    
    30     6       *           *     0     ls        # 指定每星期日的6:30执行ls命令
    
    30     3     10,20         *     *     ls       #  每月10号及20号的3:30执行ls命令
    
    25     8-11    *           *     *     ls       #  每天8-11点的第25分钟执行ls命令
    
    */15   *       *           *     *     ls        # 每15分钟执行一次ls命令
    
    30     6     */10          *     *     ls       #  每个月中,每隔10天6:30执行一次ls命令
     

    (2)/etc/crontab /etc/crontab是系统级别的定时任务,这种方式配置定时任务时,有一个专门的字段用于指定用户。使用vim打开/etc/crontab文件,可以看到如下内容:

    (3)/var/spool/cron/username /var/spool/cron/username是用户级的定时任务,每个用户的定时任务后,都配置在/var/spool/cron目录下,与用户名同名的文件中。可以直接使用vim命令直接将定时任务写入/var/spool/cron/username文件,也可以使用“crontab -e”命令配置,最终结果会自动写入/var/spool/cron/username文件。


    作者:奥辰

    微信号:chb1137796095

    Githubhttps://github.com/ChenHuabin321

    欢迎加V交流,共同学习,共同进步!

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。

  • 相关阅读:
    Mono 4.0 Mac上运行asp.net mvc 5.2.3
    ASP.NET SignalR 高可用设计
    .NET Fringe 定义未来
    微软“.Net社区虚拟大会”dotnetConf2015 第二天 无处不在的Xamarin
    微软“.Net社区虚拟大会”dotnetConf2015:关键词:.NET 创新、开源、跨平台
    Mono产品生命周期
    Paket 介绍
    谷歌发布的首款基于HTTP/2和protobuf的RPC框架:GRPC
    Visual Studio 2015 CTP6 发布
    皮裤原理和运营微信公众号dotNET跨平台
  • 原文地址:https://www.cnblogs.com/chenhuabin/p/14403612.html
Copyright © 2011-2022 走看看