当前位置: 首页 > 编程笔记 >

Linux 单个tomcat多实例部署shell脚本详解

戚甫
2023-03-14
本文向大家介绍Linux 单个tomcat多实例部署shell脚本详解,包括了Linux 单个tomcat多实例部署shell脚本详解的使用技巧和注意事项,需要的朋友参考一下

Linux 单个tomcat多实例部署shell脚本详解

步骤:

1. 下载tomcat,解压安装

2.将tomcat下的webapps,conf,temp等目录分别拷至根目录www下A,B,C目录下

3.新建如下脚本restart_tomcat.sh

4.使用restart_tomcat.sh A/B/C

#!/bin/sh  
  
if [ -z $1 ]  
then  
 echo "\033[31;1mplease input the app which you need restart...\033[0m"  
 exit 1  
fi  
  
base_dir=/Users/huangyunxing/Documents/work/www  
if [ ! -d ${base_dir}/$1 ]; then  
  echo -e "\033[31;1mcan't find the directory [${base_dir}/$1] or the [${base_dir}/$1] is no a directory, please check it...\033[0m"  
  exit 1  
fi  
  
if [ ! -f ${base_dir}/$1/conf/server.xml ]; then  
  echo -e "\033[31;1mcan't find the file [${base_dir}/$1/conf/server.xml] or the [${base_dir}/$1/conf/server.xml] is not a file, please check it...\033[0m"  
  exit 1  
fi  
  
if [ ! -d ${base_dir}/$1/webapps ]; then  
  echo -e "\033[31;1mcan't find the directory [${base_dir}/$1/webapps] or the [${base_dir}/$1/webapps] is not a directory, please check it...\033[0m"  
  exit 1  
fi  
 
export CATALINA_BASE=${base_dir}/$1  
 
if [ -f ${CATALINA_BASE}/setenv.sh ];then  
 . "${CATALINA_BASE}/setenv.sh"  
 echo "=========load setenv.sh finshed========"  
fi  
 
res=`ps aux | grep $1|grep "$JAVA_HOME/bin/java"|egrep -v "grep"|awk '{print $2}'` 
if [ "$res" == "" ]; then  
  echo -e "\033[44;38;1mthe tomcat is not running, begin startup...\033[0m"  
else  
 echo -e '\033[45;35;1mcurrent running pid is' $res',begin to stopping...\033[0m' 
 kill -9 `ps aux | grep $1|grep "$JAVA_HOME/bin/java"|egrep -v "grep"|awk '{print $2}'` && echo -e '\033[45;35;1mtomcat killed successfully\033[0m' 
fi  
  
 
 
rm -fr $CATALINA_BASE/work/* 
rm -fr $CATALINA_BASE/temp/* 
${CATALINA_HOME}/bin/catalina.sh jpda start -config ${base_dir}/$1/conf/server.xml && echo -e "\033[44;32;1mTomcat startup finished...\033[0m"  
pid=`ps aux | grep $1|grep "$JAVA_HOME/bin/java"|egrep -v "grep"|awk '{print $2}'`  
echo -e "\033[46;38;1m new running pid is ${pid}...\033[0m"  

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

 类似资料:
  • 本文向大家介绍linux实现自动部署tomcat脚本,包括了linux实现自动部署tomcat脚本的使用技巧和注意事项,需要的朋友参考一下 由于经常部署war到tomccat上,经常有一些重复的工作要做:停服务、备份war包、上传新的war包、启动服务。索性就写了一个自动部署的脚本。 脚本如下autoDeploy.sh: 说明: 1.新建一个目录autoDeploy与tomcat目录放在同级目录下

  • 本文向大家介绍Shell脚本注册到Linux系统服务实例,包括了Shell脚本注册到Linux系统服务实例的使用技巧和注意事项,需要的朋友参考一下 注册一个系统服务,开机自启动. 1 脚本编写 #vim test.sh 2注册服务 3.删除服务

  • 本文向大家介绍详解Linux--shell脚本之正则表达式,包括了详解Linux--shell脚本之正则表达式的使用技巧和注意事项,需要的朋友参考一下 一、正则表达式的概念及特点: 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。规定一些特殊语法表示字符类、数量限定符和位置关系,

  • 使用自动化脚本,一个命令来上一节中的所有操作。 自动化创建和更新 gh-pages 所以,我们采用一个 npm 包,来帮助我们完成上面的操作 cd my-note/ npm i gh-pages 然后创建 my-note/scripts/deploy-gh-pages.js 里面的内容是: 'use strict'; var ghpages = require('gh-pages'); ma

  • 本文向大家介绍Linux shell数组循环的实例详解,包括了Linux shell数组循环的实例详解的使用技巧和注意事项,需要的朋友参考一下 shell数组循环 测试shell数组,循环的例子: 输出的内容如下: 以上就是Linux shell数组循环的实例详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

  • 本文向大家介绍详解Shell脚本中调用另一个Shell脚本的三种方式,包括了详解Shell脚本中调用另一个Shell脚本的三种方式的使用技巧和注意事项,需要的朋友参考一下 主要以下有几种方式: Command Explanation fork 新开一个子 Shell 执行,子 Shell 可以从父 Shell 继承环境变量,但是子 Shell 中的环境变量不会带回给父 Shell。 exec 在同