最近在工作中频繁的操作多个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的更多相关文章

  1. Shell脚本批量启停Docker

    目录 启动docker 停止docker Python调用脚本     最近日常测试中经常需要手动启动或停止docker,于是决定写一个Shell脚本来代替人工操作,另外该脚本,也可以通过Python ...

  2. 采用shell脚本定时清理Tomcat日志

    1 Shell脚本案例 删除超过30天的日志文件 #!/bin/bash log_path=/mnt/software/apache-tomcat-.M22/logs d=`date +%Y-%m-% ...

  3. 使用shell脚本定时重启tomcat服务

    #!/bin/bash DATE=`date +%Y-%m-%d-%H-%M-%S` echo "当前时间是:$DATE" # 根据端口号查找进程 PID=`/usr/sbin/l ...

  4. shell脚本重启tomcat

    1. 新建shell空脚本文件,如 /home/tr.sh,并设置权限 # chmod 750 /home/tr.sh 2. 设置文件形式: # sed -e 's/\^M//g' /home/tr. ...

  5. Hadoop1.2.1 启停的Shell 脚本分析

    停止shell脚本以此类推.

  6. 快速部署tomcat项目的Shell脚本

    为了做集群测试,在每台机器上装了3个tomcat,每次发布项目的时候都要反复敲一些命令,重启tomcat之前先检查tomcat进程有没有停掉,没有还要手动kill该进程. 发布次数多了,操作就比较繁琐 ...

  7. 实用脚本----Linux下Jdk和Tomcat自动安装shell脚本总结

    系统环境为:ubuntu 14.04 一.JDK 自动安装脚本 jdk自动安装bash shell脚本,截止今天(2014/10/15)亲测可用: sudo su #切换到root权限 mkdir / ...

  8. linux系统下重启tomcat的shell脚本

    linux系统下重启tomcat的shell脚本: #!/bin/shtomcat_home=/opt/apache-tomcat- #找到tomcat进程的id并kill掉 ps -ef |grep ...

  9. Shell脚本,自动化发布tomcat项目【转载】

    Shell脚本,自动化发布tomcat项目脚本. 1. vko2c_auto_build_by_scp.sh 文件内容: #---------------------start------------ ...

随机推荐

  1. 如何在CentOS上创建Kubernetes集群

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由编程男孩 发表于云+社区专栏 介绍 Kubernetes(常简称为K8s)是用于自动部署.扩展和管理容器化(containerized ...

  2. WPF 小小案列(同步异步)

    private void BtnButton_Click(object sender, RoutedEventArgs e) { MessageBox.Show("hello Word&qu ...

  3. Mybatis插入数据返回主键ID

    <insert id="add" parameterType="com.dsa.core.base.model.ProductSync">      ...

  4. css 四周边框角加粗效果

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 联发科MT8788基带处理器介绍

    MT8788设备具有集成的蓝牙.fm.wlan和gps模块,是一个高度集成的基带平台,包括调制解调器和应用处理子系统,启用LTE/LTE-A和C2K智能设备应用程序.该芯片集成了工作在2.0GHz的A ...

  6. Linux新加磁盘挂载和重启自动挂载

    提示两点:*新加的硬盘需要重启服务器fdisk -l才能看到*下面操作要用root账户大概是这样的,查看-分区-格式化-挂载-重启自动挂载1.加硬盘后重启服务器查看[root@test199 ~]# ...

  7. 排错-升级Exchange 2013 CU22后程序名称显示异常

    近期在按需更新Exchange 2013 CU22补丁以便解决Microsoft Exchange Server ADV190007 Guidance for "PrivExchange&q ...

  8. vmware P2V迁移域内windows服务器脱域问题

    windows 域服务器采用vmware converter进行物理机转换为虚拟机,需要在完成后进行退域重新加域操作. 否则,有可能会出现服务器在30天后脱域情况.出现脱域情况,可以通过退域加域的方式 ...

  9. 【Python实践-4】切片操作去除字符串首尾的空格

    #利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法 def trim(s): while s[0:1]==' ': s=s[1:] while s[ ...

  10. 【Python实践-3】汉诺塔问题递归求解(打印移动步骤及计算移动步数)

    # -*- coding: utf-8 -*- #汉诺塔移动问题 # 定义move(n,a,b,c)函数,接受参数n,表示3个柱子A.B.C中第1个柱子A的盘子数量 # 然后打印出把所有盘子从A借助B ...