zoukankan      html  css  js  c++  java
  • Linux 任务计划

    crontab

    crontab 命令从输入设备读取指令,并将其存放于 crontab 文件中,以供之后读取和执行。通常,crontab 储存的指令被守护进程激活,crond 为其守护进程,crond 常常在后台运行,每一分钟会检查一次是否有预定的作业需要执行。

    crontab 格式

    # 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
    

    crontab 使用

    # 部署
    # 每个用户使用 crontab -e 添加计划任务,都会在 /var/spool/cron/crontabs 中添加一个该用户自己的任务文档,这样目的是为了隔离。
    crontab -e
    
    # 每隔2分钟输出时间到文件,其它的在例子中
    */2 * * * * echo `date` >> $HOME>test.txt
    
    
    # 查看添加的任务
    crontab -l
    
    # 删除任务
    crontab -r
    
    # 查看是否在后台成功启动
    ps aux | grep cron
    

    crontab 目录

    /etc/cron.daily,目录下的脚本会每天执行一次,在每天的 6 点 25 分时运行;
    /etc/cron.hourly,目录下的脚本会每个小时执行一次,在每小时的 17 分钟时运行;
    /etc/cron.monthly,目录下的脚本会每月执行一次,在每月 1 号的 6 点 52 分时运行;
    /etc/cron.weekly,目录下的脚本会每周执行一次,在每周第七天的 6 点 47 分时运行;
    

    例子

    30 21 * * * command       #每晚的21:30
    45 4 1,10,22 * * command  #每月1、10、22日的4 : 45
    10 1 * * 6,0 command      #每周六、周日的1 : 10重启apache
    0,30 18-23 * * * command  #每天18 : 00至23 : 00之间每隔30分钟
    0 23 * * 6 command        #每星期六的11 : 00 pm
    * */1 * * * command       #每一小时重启apache
    * 23-7/1 * * * command    #晚上11点到早上7点之间,每隔一小时重启apache
    0 11 4 * mon-wed command  #每月的4号与每周一到周三的11点重启apache
    0 4 1 jan * command       #一月一号的4点重启apache
    

    时间计算工具 https://tool.lu/crontab/

  • 相关阅读:
    java常见面试题汇总(三)
    Java学习流程图(学习路线、书籍、教程推荐)
    java开发面试题:spring面试题总结
    2014.11.12模拟赛【最大公因数】
    2014.11.12模拟赛【最小公倍数】| vijos1047最小公倍数
    vijos1781 同余方程
    vijos1777 引水入城
    2014.10.31我出的模拟赛【天神下凡】
    voijs1883 月光的魔法
    2014.10.31我出的模拟赛【藏宝图】
  • 原文地址:https://www.cnblogs.com/linzhenyu/p/13159004.html
Copyright © 2011-2022 走看看