【Linux】crontab定时执行任务

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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章