应用shell脚本停启Tomcat
最近在工作中频繁的操作多个tomcat,顺便就简单研究了一下
一. 简介
Shell 是一种与操作系统直接交互的程序,Unix系统中叫Bourne Shell,包括以下几种
Sh—Bourne Shell
Csh—C Shell
Ksh—Korn Shell
Tcsh—enhanced C Shell
Bash—GNU Bourne Again Shell
Zsh—extension to Bash, Ksh, and Tcsh
Pdksh—extension to KSH
二. 应用
为了反复停启多个tomcat,编写了如下脚本:
#测试环境 停启tomcat脚本 stoptomcatandrestart.sh
#!/bin/sh
#kill tomcat pid
name=tomcat
tomcat1home=/data/tomcat8-mobile-e
tomcat2home=/data/tomcat8-mobile-a
pidlist=`ps -ef | grep $name | grep -v "grep" | awk '{print $2}'`
function stop(){
if [ "$pidlist" == "" ]
then
echo "----$name 已经关闭----"
#exit
else
echo "----name进程号:
pidlist"
sudo kill - $pidlist
echo "KILL $pidlist:"
fi
}
stop
pidlist2=`ps -ef | grep $name | grep -v "grep" | awk '{print $2}'`
if [ "$pidlist2" == "" ]
then
echo "----关闭$name成功----" && sudo $tomcat1home/bin/startup.sh && sudo $tomcat2home/bin/startup.sh && sudo tail -f $tomcat1home/logs/catalina.out
else
echo "----关闭$name失败----"
#echo "kill tomcat successful! " && sudo $tomcat1home/bin/startup.sh
fi
exit
三. 拓展
以后可以使用expect spawn来实现人机交互,比如动态输入一行语句,得到相应提示后,再输入后续的内容。
应用shell脚本停启Tomcat的更多相关文章
- Shell脚本批量启停Docker
目录 启动docker 停止docker Python调用脚本 最近日常测试中经常需要手动启动或停止docker,于是决定写一个Shell脚本来代替人工操作,另外该脚本,也可以通过Python ...
- 采用shell脚本定时清理Tomcat日志
1 Shell脚本案例 删除超过30天的日志文件 #!/bin/bash log_path=/mnt/software/apache-tomcat-.M22/logs d=`date +%Y-%m-% ...
- 使用shell脚本定时重启tomcat服务
#!/bin/bash DATE=`date +%Y-%m-%d-%H-%M-%S` echo "当前时间是:$DATE" # 根据端口号查找进程 PID=`/usr/sbin/l ...
- shell脚本重启tomcat
1. 新建shell空脚本文件,如 /home/tr.sh,并设置权限 # chmod 750 /home/tr.sh 2. 设置文件形式: # sed -e 's/\^M//g' /home/tr. ...
- Hadoop1.2.1 启停的Shell 脚本分析
停止shell脚本以此类推.
- 快速部署tomcat项目的Shell脚本
为了做集群测试,在每台机器上装了3个tomcat,每次发布项目的时候都要反复敲一些命令,重启tomcat之前先检查tomcat进程有没有停掉,没有还要手动kill该进程. 发布次数多了,操作就比较繁琐 ...
- 实用脚本----Linux下Jdk和Tomcat自动安装shell脚本总结
系统环境为:ubuntu 14.04 一.JDK 自动安装脚本 jdk自动安装bash shell脚本,截止今天(2014/10/15)亲测可用: sudo su #切换到root权限 mkdir / ...
- linux系统下重启tomcat的shell脚本
linux系统下重启tomcat的shell脚本: #!/bin/shtomcat_home=/opt/apache-tomcat- #找到tomcat进程的id并kill掉 ps -ef |grep ...
- Shell脚本,自动化发布tomcat项目【转载】
Shell脚本,自动化发布tomcat项目脚本. 1. vko2c_auto_build_by_scp.sh 文件内容: #---------------------start------------ ...
随机推荐
- MVC设计模式思想及简单实现
一.什么是MVC MVC即Model-View-Controller(模型-视图-控制器)是一种软件设计模式,最早出现在Smalltalk语言中,后被Sun公司推荐为Java EE平台的设计模式. M ...
- nginx之location配置详解及案例
语法规则: location [=|~|~*|^~] /uri/ { … } = 开头表示精确匹配 ^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可.nginx不对url做编码, ...
- LOJ #6060. 「2017 山东一轮集训 Day1 / SDWC2018 Day1」Set
有趣的思博套路题,想到了基本上加上个对线性基的理解就可以过了 首先考虑到这个把数分成两半的分别异或的过程不会改变某一位上\(1\)的总个数 因此我们求出所有数的\(\operatorname{xor} ...
- ng6.1 新特性:滚回到之前的位置
在之前的版本中滚动条位置是一个大问题,主要表现在 1. 使用快捷键或者手势前进/后退的时候,滚动条的位置经常是错乱的,所以只能每个页面都要重置一个滚动条的位置: 2. #anchor1 锚点位置无法定 ...
- js判断参数是否为非数字
isNaN() 函数用于检查其参数是否是非数字值.
- PopupWindowMenuUtil【popupwindow样式菜单项列表】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 实现PopupWindow样式的Menu菜单. 效果图 代码分析 使用PopupWindow实现. 列表使用的是Recyclervi ...
- DI是实现面向切面和面向抽象的前提
DI越来越重要 DI就是依赖注入,现在来说,大部分框架都是以DI为基础组件的,每一个框架都有自己的DI组件,像dotnet core,java spring等,也都为自己的框架量身打造了DI工具. 面 ...
- DotNetCore跨平台~聊聊中间件
回到目录 在进行.net core平台之后,我们如果希望在请求过程中添加一些事件是非常容易的,你可以把这些事件做成一个中间件Middleware,然后这些中间件就会以Http pipeline的管道方 ...
- 深入解读MySQL8.0 新特性 :Crash Safe DDL
前言 在MySQL8.0之前的版本中,由于架构的原因,mysql在server层使用统一的frm文件来存储表元数据信息,这个信息能够被不同的存储引擎识别.而实际上innodb本身也存储有元数据信息.这 ...
- GoLang simple-project-demo-02
GoLang 有很多种数据类型:字符型,整型,浮点型,布尔型.下面是基础例子: package main import "fmt" func main() { fmt.Printl ...