最近在工作中频繁的操作多个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. Docker最全教程之使用Docker搭建Java开发环境(十七)

    前言 Java是一门面向对象的优秀编程语言,市场占有率极高,但是在容器化实践过程中,发现官方支持并不友好,同时与其他编程语言的基础镜像相比(具体见各语言镜像比较),确实是非常臃肿. 本篇仅作探索,希望 ...

  2. 安卓开发笔记(二十一):Android Studio如何创建assets目录

    方法如下: 因为在用WebView控件查看安卓内置网页的时候,必须创建这个资源文件夹,将网页放置在这个目录之下,默认是没有assets这个目录的,这样才可以实现网页代码html.css.javascr ...

  3. Git思维导图

    EBay全程问了我关于Git的原理, 各种命令行:平常依赖Idea的图形化太严重了,今天仔细总结一下常用的工具:   Git学习的链接: https://book.git-scm.com/ http: ...

  4. Git 中 .gitignore 的配置语法

    一.前言 在日常的开发中,当我们需要将一个项目提交到 Git 时,并不是所有的文件都需要提交,比如一些自动生成的文件,类似于 .idea 文件.class 文件等,这时候就可以使用.gitignore ...

  5. Soot生成代码控制流图

    Soot可以对代码进行分析,提供了多种字节码分析和变换功能,通过它可以进行过程内和过程间的分析优化,以及程序流图的生成,还能通过图形化的方式输出. http://www.brics.dk/SootGu ...

  6. 在离线环境中安装Visual Stuido 2017

    在离线环境中安装Visual Stuido 2017 0x00 写在前面的废话 因为工作上大多数都是在离线环境中进行的,进出离线环境很麻烦,所以之前很长一段时间都在使用VS2010.后来尝试换了VS2 ...

  7. 千星项目.Net Core 2.1移植填坑记--OpenAuth.Core诞生

    背景 很早就有把OpenAuth.Net----最好用的.net权限管理工作流框架(好吧!我在吹牛

  8. 使用dom4j 解析xml文件

    //使用dom4j 解析xml文件,升级版,dom4j是对dom的封装 //重点 package com.offcn.utils; import java.io.File; import java.i ...

  9. Python存储系统(Redis)

    存储系统数据缓存一般会使用三个模块:Mongodb,redis,memcache.其中memcache是轻量级缓存,只能将数据保存到内存中,redis可以配置数据保存在内存还是硬盘. 其主要用途有:不 ...

  10. InkImageDataSetGenerator-开源一个可用于机器学习的书写轨迹图片生成的小工具

    这是一个简单易用的图片数据集生成小工具,基于OpenCV和UWP Ink API,它可以根据指定的手写轨迹生成一系列各个角度的图片.每张图片的尺寸和总体数量都是可以指定的,均存放在统一的生成目录中.h ...