zoukankan      html  css  js  c++  java
  • linux定时任务设置

      设置定时任务时,需要注意很多细节,如权限,路径,输出日志等等,这里以centOS为例,给出一个执行成功的例子,但实际设置的方法很多,本篇只是作为参考。

      登录服务器时是自己的用户名,在/opt/目录下新建一个文件夹,而后把jar包,依赖以及日志的目录新建好,给出权限:

    sudo chmod -R 777 *

      而后书写脚本,脚本内容设置为执行关键jar包,并输出日志,需要注意的是,这里的jar包路径以及日志的路径都必须是绝对路径,否则在定时任务中无法执行:

    #!/bin/bash
    /opt/jdk1.7.0_67/bin/java -jar /opt/chiq3huanJson/SendMsgHuanJson-0.0.1-SNAPSHOT.jar >> /opt/chiq3huanJson/logs/SendMsgHuanJson.log

    这里可以看到,jdk是绝对路径,这是由于jar包编译的环境为jdk1.7,而服务器的默认环境为jdk1.6,所以需要指定jdk的路径。写好脚本后,同样给出777权限。此时测试脚本,如果能够成功执行,我们就可以设置定时任务了:

    sudo crontab -e

      进入后设置运行我们刚刚书写的脚本:

    15 23 * * * sh /opt/chiq3huanJson/go.sh

    --->
    关键的点:权限/路径

    =========================================>

      关于时间设置规则:

    基本格式 :
    *  *  *  *  *  command
    分 时 日 月 周 命令

    第1列表示分钟1~59 每分钟用*或者 */1表示
    第2列表示小时1~23(0表示0点)
    第3列表示日期1~31
    第4列表示月份1~12
    第5列标识号星期0~6(0表示星期天)
    第6列要运行的命令

    crontab文件的一些例子:

    30 21 * * * /usr/local/etc/rc.d/lighttpd restart
    上面的例子表示每晚的21:30重启apache。

    45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
    上面的例子表示每月1、10、22日的4 : 45重启apache。

    10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
    上面的例子表示每周六、周日的1 : 10重启apache。

    0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
    上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。

    0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
    上面的例子表示每星期六的11 : 00 pm重启apache。

    * */1 * * * /usr/local/etc/rc.d/lighttpd restart
    每一小时重启apache

    * 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
    晚上11点到早上7点之间,每隔一小时重启apache

    0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
    每月的4号与每周一到周三的11点重启apache

    0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
    一月一号的4点重启apache

      

  • 相关阅读:
    js 表格上下移动 javascript实现
    存储过程-----DECLARE---实用注意事项
    储存过程-原理、语法、函数详细说明
    第九章 接口
    第八章 多态
    第七章 类复用
    synchronized ---- 作用
    集合框架综述
    java static代码块执行时机
    状态模式
  • 原文地址:https://www.cnblogs.com/bruceChan0018/p/5976570.html
Copyright © 2011-2022 走看看