编写shell脚本实现tomcat定时重启的方法
我的环境是 centos 7
1、 在某个目录新建一个 .sh 脚本文件(一般cron安装在var/spool/cron这里,于是我就将脚本创建在这)
vim /var/spool/cron/tomcatStart.sh
2、 在 tomcatStart.sh 文件里面写入一下代码
#!/bin/bash
/etc/profile
tomcatPath="/usr/local/tomcat"
binPath="$tomcatPath/bin"
echo "[info][$(date)]正在监控tomcat,路径:$tomcatPath"
pid=`ps -ef | grep tomcat | grep -w $tomcatPath | grep -v 'grep' | awk '{print $2}'`
if [ -n "$pid" ]; then
echo "[info][$(date)]tomcat进程为:$pid"
echo "[info][$(date)]tomcat已经启动,准备使用shutdown命令关闭"
$binPath"/shutdown.sh"
sleep 2
pid=`ps -ef | grep tomcat | grep -w $tomcatPath | grep -v 'grep' | awk '{print $2}'`
if [ -n "$pid" ]; then
echo "[info][$(date)]使用shutdown关闭失败,准备kill进程"
kill -9 $pid
echo "[info][$(date)]kill进程完毕"
sleep 1
else
echo "[info][$(date)]使用shutdown关闭成功"
fi
else
echo "[info][$(date)]tomcat未启动"
fi
echo "[info][$(date)]准备启动tomcat"
$binPath"/startup.sh"
注意:if [ -n “$pid” ]; then,这个语句中括号“[”后边一定要有空格,"]"前边一定要有空格
3、 修改 tomcatStart.sh 的权限
chmod +x /var/spool/cron/tomcatStart.sh
4、添加脚本到 crontab 定时任务
vi /etc/crontab
// 第一个是 tomcatStart.sh 的路径, 第二个是将日志输出到某个文件中
00 03 * * * root /var/spool/cron/tomcatStart.sh >> /usr/local/tomcat/tomcatStartLog.txt
5、重启一下 crontab 以生效
systemctl restart crond
或者
service crond restart
注意:if [ -n “$pid” ]; then,这个语句中括号“[”后边一定要有空格,"]"前边一定要有空格
注:定时器等操作不详细介绍,具体请参考linux定时备份MySQL数据库
作者:10676
链接:https://www.jianshu.com/p/45455f36e859
编写shell脚本实现tomcat定时重启的方法相关推荐
- linux shell脚本攻略_(python)Linux下shell脚本监控Tomcat的状态并实现自动启动步骤...
今天为大家带来的内容是:(python)Linux下shell脚本监控Tomcat的状态并实现自动启动步骤 本文内容主要介绍了Linux下shell脚本监控Tomcat的状态并实现自动启动的步骤,文章 ...
- 教你如何编写shell脚本
一.shell脚本编程规范 在一些复杂的Linux维护工作,大量重复性的输入与交互操作不但费时费力,而且容易出错,而编写一个恰好片的shell脚本程序,可以批量处理.自动化地完成一系列维护任务,大大减 ...
- Tomcat定时重启
Tomcat定时重启 本文主要是介绍定时重启tomcat7.exe不是tomcat7w.exe下的start 一.原理 1.1原理 编写.bat文件的脚本.通过windows计划任务定期调用执行脚本文 ...
- 多宽带联网(三) OpenWrt中使用cURL方法编写Shell脚本自动完成网页宽带认证登录(校园网认证登录解决方案) 使用awk命令
对于非PPPoE方式认证,而是采用网页认证登录的宽带用户(如校园网).采用<多宽带联网(二)>中的方法一个一个接口进行认证登录过于繁琐.本节将采用Shell脚本和cURL方法,模拟人工认证 ...
- 在 Windows 系统上使用 Vim 编写 Shell 脚本并且运行
1. Windows 下的 PowerShell Shell 既是一种命令语言,也是一种程序设计语言,目前主要用于 Linux 系统. PowerShell 是一种跨平台的任务自动化解决方案,由命令行 ...
- Jenkins执行shell脚本启动tomcat失败解决方法
Jenkins执行shell脚本启动tomcat失败解决方法 参考文章: (1)Jenkins执行shell脚本启动tomcat失败解决方法 (2)https://www.cnblogs.com/wa ...
- linux 脚本 lang,golang可以编写shell脚本吗
golang可以编写shell脚本吗 golang是可以编写shell脚本,首先可以通过创建一个阅读器去访问键盘,每当按下回车键时,任何的写入都会被存储到输入变量中:然后根据出入的数据来执行逻辑运算: ...
- 深信服上网行为管理开启snmp_编写SHELL脚本在CACTI中来实现监控深信服上网行为管理的CPU和内存使用情况...
一.深信服上网行为管理中的SNMP设置 二.在CACTI中编写SHELL脚本如下: cpu oid: .1.3.6.1.4.1.35047.1.3 内存 oid: .1.3.6.1.4.1.35047 ...
- linux脚本定时拷贝文件,使用Linux shell脚本实现FTP定时执行批量下载指定文件
使用FTP定时批量下载指定文件的shell脚本,具体实例介绍如下所示: 1.目标FTP服务器地址 #FTP服务器地址 ip=10.19.15.23 2.FTP账号和密码 u=账号 p=密码 3.使用m ...
最新文章
- Xamarin Anroid开发教程之Anroid开发工具及应用介绍
- JavaScript——易班优课YOOC课群在线测试自动答题解决方案(十一)恢复右键、选择和复制
- P4389 付公主的背包(生成函数/多项式)
- 计算机专业可以评机械工程师,机械工程师个人评价
- 【Elasticsearch】index [index] blocked by: [TOO_MANY_REQUESTS/12/index read-only / allow delete (api)]
- 使用TortoiseSVN下载SourceForge.net上的代码
- nyoj 78:圈水池 【凸包入门】
- 关于angular开发中报错Cannot find module ‘webpack/lib/node/NodeTemplatePlugin‘问题的解决办法若干
- Flash制作(简单)电子相册
- 神经网络求解二阶常微分方程(代码)
- 网页(HTML)转换为PDF
- web页面和ssh登陆到防火墙
- 3D GAME PROGRAMMING WITH DIRECTX11(3)
- 淘宝/天猫获取商品历史价格信息 API 返回值说明
- mysql——关于找不到vrcuntime140.dll与vrcuntime140_1.dll的问题
- 几本关于用户体验的书籍
- 阿里云HaaS100物联网开发板学习笔记(三)轻应用初步--用js让小灯闪烁起来
- 5G NR无线通信频率分配表
- Codewars(3)
- 关于雅可比矩阵及行列式的理解与学习
热门文章
- 情感极性分析:基于情感词典、k-NN、Bayes、最大熵、SVM的情感极性分析
- 票据图片复杂表格框识别(票据单元格切割)
- 360搜索下拉词下拉框获客方案分享
- k8s部署jar包_K8S部署SpringBoot应用_都超的博客-CSDN博客_k8s springboot
- python字符串驼峰转换_将字符串转换为驼峰格式
- python实现不重复排列组合_Python使用combinations实现排列组合的方法
- 网站代码有服务器系统限制吗,服务器内存最大大小限制(示例代码)
- 基于MySQL的调度系统_仓储调度系统的设计与实现(SSH,MySQL)
- poj 1160 Post Office(DP简单题)
- 不再依赖A*,利用C++编写全新寻路算法