【Linux】crontab定时执行任务

    xiaoxiao2021-12-12  5

    Linux定时执行任务命令 >> crontab

    一、cron服务

    【1】在LINUX中,周期执行的任务一般由cron这个守护进程来处理

    【2】启动服务:/sbin/service crond start 

    【3】关闭服务:/sbin/service crond stop 

    【4】查看服务状态:/sbin/service crowd status

    【5】重启服务:/sbin/service crond restart 

    【6】重新载入配置:/sbin/service crond reload

    二、crontab命令

      cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间,cron的配置文件称为crontab

    【1】crontab -e  编辑某个用户的任务

    【2】crontab -l  列出某个用户的任务计划

    【3】crontab -r  删除某个用户的任务

    【4】crontab -u  指定一个用户

    三、cron文件语法

    【1】   *   *   *   *    *  command             分   时   日    月    周   命令

              0-59   0-23   1-31   1-12   0-6  (取值范围,0表示周日)

       

    【2】特殊符号含义

      *   代表取值范围内的数字

      /   代表“每”

      -   代表从某个数字到某个数字

      ,   分开几个离散的数字

    【3】示例

       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     6       *        *     0     ls             指定每星期日的6:30执行ls命令

    【4】更多示例和内容

    http://blog.csdn.net/xiyuan1999/article/details/8160998

    四、crontab配置问题

    【1】查看crontab配置文件,PATH为配置的系统环境

    【2】问题:shell命令可以执行脚本,而在crontab中无法执行

    原因:需要执行的脚本中,包含一些执行命令(比如apktool),而命令的安装路径(比如/usr/local/bin/apktool)不在crontab的PATH中,所以导致command not found

    解决:使用crontab执行脚本,脚本中的命令和输出,都使用绝对路径

    【3】可以把结果输出和错误信息,重定向到log文件

    五、参考链接

    【1】http://blog.csdn.net/xiyuan1999/article/details/8160998

    【2】http://blog.csdn.net/xiyuan1999/article/details/8160977

    转载请注明原文地址: https://ju.6miu.com/read-900233.html

    最新回复(0)