zoukankan      html  css  js  c++  java
  • 自己用crontab弄个定时任务备份日志重启项目

    项目久了就会出现很多日志,如果不清理就会占用很大的空间,今天就记录下自己在系统弄的第一个定时任务。

    要完成这个定时任务需要两方面的知识:

      1.写出一个日志备份的脚本;

      2.用crontab命令设置一个定时任务来执行脚本。

    首先可以写一个测试的脚本试一下,这里提供一个重启项目的脚本供参考:

    #!/bin/sh
    #--------------------
    #---自动化脚本-----
    #-----------------
    TOMCAT_PATH=/home/fssc/tomcat-EAS/bin
    echo "开始执行定时器任务"
    echo "ps -ef|grep tomcat-EAS"
    jobid=$(ps -ef|grep 'tomcat-EAS' | grep java | awk '{print $2}')
    echo $jobid
    kill -9 $jobid
    echo "睡一会5.4.3.2.1.."
    sleep 5
    echo "重启服务..."
    sh /home/fssc/tomcat-EAS/bin/startup.sh
    echo "定时任务结束end......."                  

    crontab命令使用:

    crontab -l:查看是否有定时任务;

    crontab -e:编辑一个定时任务;

    案例: 10 23 * * * sh /home/fssc/restart.sh  每晚十一点10分执行

    遇到的问题:

    1.脚本执行出错

    写出脚本之后可以先用sh命令运行下,比如只写输出的逻辑,先保证脚本能正常运行后再开始定时任务。

    2.脚本没权限执行。

    给使用这增加可执行权限,chmod 777 restart.sh

     如果希望其他角色也能执行也可以增加权限,chmod o+x,u+x

     3.怎么看定时任务是否执行成功

    如果脚本中有输出的语句,可以直接看工具的图形界面。

    如果没看到,可以查看执行结果邮件。

    邮件会发送到当前用户下,地址是 /var/spool/mail/当前用户名

    通过cat /var/spool/mail/当前用户名就可以看到执行的记录。

    完毕。

  • 相关阅读:
    记录ICallbackEventHandler 同时并发访问容易引发的问题
    IIS 属性
    Solaris10 安装
    VerifyRenderingInServerForm和EnableEventValidation引发的两个问题
    Solaris 上网配置
    动态数据类型转换
    RDLC 折线图
    codesmith复制中文乱码解决
    关于手机等品牌型号搜索与采集的中文分词分离
    说点包租公限制共享上网的破事
  • 原文地址:https://www.cnblogs.com/crazycomputers/p/11981013.html
Copyright © 2011-2022 走看看