重启tomcat脚本

vim restart.sh
  • 脚本一
#!/bin/bash  
#Filename: restartTomcat.sh
#Description: 重启tomcat服务#声明环境变量,可重复使用
export LANG=zh_CN.UTF-8
export JAVA_HOME=/usr/local/jdk1.7.0_80
export JRE_HOME=${JAVA_HOME}/jre
export TOMCAT_HOME=/usr/local/apache-tomcat-7.0.108-8081
#输出开始时间
echo "[$(date +'%F %T')] >>> Tomcat begin to restart."
#关闭tomcat服务
${TOMCAT_HOME}/bin/shutdown.sh
# Kill all remaining processes 杀掉所有残留进程,不杀掉会占用系统资源
pidList=$(ps aux | grep ${TOMCAT_HOME} | grep -v grep | awk '{print $2}')
if [ "${pidList}" != "" ]
thenecho "残留的进程号:${pidList}";for pid in $pidList; dokill -9 $pidecho "[$(date +'%F %T')] >>> Kill the process [$pid] successfully."done
elseecho "无 残留的进程号";
fi
#启动tomcat服务
${TOMCAT_HOME}/bin/startup.sh
#获取重新启动后的tomcat服务的进程号
pidList2=$(ps aux | grep ${TOMCAT_HOME} | grep -v grep | awk '{print $2}')
if [ "${pidList2}" != "" ]
thenecho "启动后的进程号:${pidList2}";echo "[$(date +'%F %T')] >>> Tomcat restart complete."echo "本次tomcat成功重启 \n\n"
elseecho "本次tomcat服务启动出错,请查看/logs/catalina.out日志文件"
fi
  • 脚本二
#!/bin/bash
tomcatPath="apache-tomcat-7.0.108-8081"
binPath="$tomcatPath/bin"
echo "[info][$(date +'%F %H:%M:%S')]正在监控tomcat,路径:$tomcatPath"
pid=`ps -ef | grep $tomcatPath | grep -w $tomcatPath | grep -v 'grep' | awk '{print $2}'`
echo "-------当前进程号:$pid----------"
if [ -n "$pid" ]; then
echo "[info][$(date +'%F %H:%M:%S')]tomcat进程为:$pid"
echo "[info][$(date +'%F %H:%M:%S')]tomcat已经启动,准备使用shutdown命令关闭..."
$binPath"/shutdown.sh"
sleep 10
echo "-------当前进程号:$pid----------"
fi
pid=`ps -ef | grep $tomcatPath | grep -w $tomcatPath | grep -v 'grep' | awk '{print $2}'`
if [ -n "$pid" ]; then
kill -9 $pid
echo "[info][$(date +'%F %H:%M:%S')]kill进程完毕!"
sleep 10
else
echo "-------当前进程号:$pid-----没有进程号说明tomcat服务已经停止了-----"
$binPath"/startup.sh"
fi
echo "[info][$(date +'%F %H:%M:%S')]tomcat未启动!"
echo "[info][$(date +'%F %H:%M:%S')]准备启动tomcat..."
$binPath"/startup.sh"
echo "-------当前进程号:$pid-----tomcat启动成功-----"

编写完毕之后给脚本增加执行权限

chmod +x restart.sh

然后建立定时任务
每隔三天的零时零分执行脚本

 crontab -e0 0 */3 * * sh /home/wuyue/restart.sh

定时关闭Tomcat

#!/bin/sh
pid=`ps -ef |grep 'apache-tomcat-7.0.103-8081/conf' |grep -w 'apache-tomcat-7.0.103-8081/conf'|grep -v 'grep'|awk '{print $2}'`
echo $pid
if [ -n "$pid" ];thenecho "===========shutdown 停服务 apache-tomcat-7.0.103-8057================"  /usr/local/apache-tomcat-7.0.103-8081/bin/shutdown.shsleep 3pid=`ps -ef |grep apache-tomcat-7.0.103-8081 |grep -w 'apache-tomcat-7.0.103-8081'|grep -v 'grep'|awk '{print $2}'`echo "查询到进程号:" $pidif [ -n "$pid" ];thensleep 1echo ========kill 杀掉进程: $pid ==============    kill -9 $pidfi
fi

Tomcat定时重启脚本相关推荐

  1. linux定时重启tomcat的脚本,Linux系统中的tomcat定时重启脚本

    1.Linux下tomcat重启脚本 [root@]# vi test.sh #!/bin/sh export JAVA_HOME=/usr/java/j2sdk1.4.2_06/ pid=`ps - ...

  2. Tomcat定时重启

    Tomcat定时重启 本文主要是介绍定时重启tomcat7.exe不是tomcat7w.exe下的start 一.原理 1.1原理 编写.bat文件的脚本.通过windows计划任务定期调用执行脚本文 ...

  3. Contos7下tomcat定时重启实现

    遇到一个需求,每天tomcat需要定时重启下,人工操作多累啊,还有可能会遗忘,所以来搞一波,走起~ 1.创建脚本 可以在本地编辑好上传,也可以在服务器创建文件,我的文件名是"tomcat_r ...

  4. tomcat自动重启脚本

    tomcat自动重启的linux 脚本 #!/bin/bashtomcat_is_alive=`ps -ef| grep "java" | grep "/home/apa ...

  5. ESXI主机定时重启脚本

    通过shell登陆ESXI主机,编辑脚本.完成定时重启物理主机. 1.开启主机的ssh功能. 2.编辑脚本如下.可以使用vi编辑. #不需要的参数在前面加# 注释掉 #!/bin/sh #设置天 sl ...

  6. linux tomcat定时重启服务

    1.创建重启脚本 1.编辑脚本 cd /homevim tomcatRestart.shSHUTDOWN=$tomcat_home/bin/shutdown.sh STARTTOMCAT=$tomca ...

  7. linux中程序定时重启脚本,linux下通过脚本实现自动重启程序的方法

    烈火建站学院(LieHuo.Net)转载无论什么程序都不可能完美无缺,理论上,任何程序都有 Core Dump 的一天,正式运营的程序,尤其是服务器程序,一旦 Core Dump ,后果不堪设想,有过 ...

  8. win10 定时重启脚本

    注意:需要以管理员身份运行cmd 创建定时计划 # 每天早上 07:30 定时执行 schtasks /create /tn "定日定时重启" /tr "shutdown ...

  9. 编写shell脚本实现tomcat定时重启的方法

    我的环境是 centos 7 1. 在某个目录新建一个 .sh 脚本文件(一般cron安装在var/spool/cron这里,于是我就将脚本创建在这) vim /var/spool/cron/tomc ...

最新文章

  1. Python Logging模块实现运行的程序写入 日志
  2. macOS下安装dlib踩坑记录
  3. 信息系统项目管理师题型及题数
  4. PopupWindow的基本使用
  5. udp需要arp请求吗_当你随便浏览一个网页时,你知道背后做了多少工作吗?
  6. 经典C语言程序100例之五八
  7. javascript --- 几个其他的跨域技术(图像Ping、JSONP、Comet)
  8. POJ 3122 Pie 二分枚举
  9. ajax 传送很多html字符串到前台例子
  10. 使用PDF Converter OCR for Mac如何区分扫描的PDF和普通文件?
  11. Windows创建快捷方式的几种方法你用过哪些?
  12. 数据结构与算法——算法知识总览
  13. python基础总结:1.6、流程控制
  14. c++的size_t
  15. 微创脑科学上市破发:公司市值143亿港元 微创医疗是大股东
  16. 深度学习:常见深度学习框架【Theano、TensorFlow、Keras、Caffe/Caffe2、MXNet、CNTK、PyTorch】
  17. SpringBoot使用mybatis-autogenerator时,显示Failure to find org.eclipse.m2e:lifecycle-mapping:pom:1.0.0错误
  18. Centos7 安装部署apache。简单易上手
  19. python列表元素按条件分组_Python列表元素分组
  20. 2020-02-26

热门文章

  1. 华为可以分屏吗_若华为启用“鸿蒙”,那原来安卓系统的手机,可以更换新系统吗?...
  2. Mac 下texstudio内置pdf浏览器不显示中文
  3. Netty学习(一)-- Netty 底层 Java NIO
  4. xen系统安装服务器,在CentOS 7系统上安装Xen的方法
  5. 小程序可以显示群名称啦!
  6. 《深入理解Scala》——第1章,第1.2节当函数式编程遇见面向对象
  7. scratch(图形化编程工具)做3.0版本的猫咪积木模拟器。
  8. 中国汉字在编排设计上的一些问题
  9. 金蝶委外订单后台代码
  10. 怎么理解c语言,到底怎么样C语言才算入门?大一新生的痛:这些你理解了多少...