一、项目文件为一个 jar 包,无须解压

  • 重启 Tomcat 项目
 #!/bin/bash

 echo "kill hot-jdt"
kill -9 `ps -ef|grep hot-jdt|grep -v grep|awk '{print $2}'`
sleep 3s echo "startup tomcat_admin"
nohup java -jar /usr/local/hot_jdt/hot-jdt.jar > /usr/local/hot_jdt/log/jdt.log 2>&1 &
echo $! > tpid echo "Start Success!"
sleep 1s
  • 更新 Tomcat 项目
 #!/bin/sh
currenttime=`date +%Y%m%d%H%M%S`
echo "End process hot-jdt"
kill -9 `ps -ef|grep hot-jdt|grep -v grep|awk '{print $2}'`
sleep 2s rm -f tpid echo "Copy jar"
cp /usr/local/upload_jdt/hot-jdt.jar /usr/local/hot_jdt/hot-jdt.jar
sleep 2s echo "backgrounp jar"
nohup java -jar /usr/local/hot_jdt/hot-jdt.jar > /usr/local/hot_jdt/log/jdt.log 2>&1 & echo $! > tpid echo Start Success! echo "save hot_jdt jar"
mv /usr/local/upload_jdt/hot-jdt.jar /usr/local/upload_jdt/bak/hot-jdt_$currenttime.jar echo "update is complete!"
sleep 1s

二、Tomcat 项目文件为一个 jar 包,需要解压

  • 重启
 #!/bin/bash
currenttime=`date +%Y%m%d%H%M%S` JAVA_HOME=$JAVA_HOME
PATH=$JAVA_HOME/bin:/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH #/usr/local/tomcat/tomcat_jdt/bin/./shutdown.sh
#/usr/local/tomcat/tomcat_pot/bin/./shutdown.sh
#/usr/local/tomcat/tomcat_bay/bin/./shutdown.sh
#/usr/local/tomcat/tomcat_sass/bin/./shutdown.sh kill -9 `ps -ef|grep tomcat_jdt|grep -v grep|awk '{print $2}'`
sleep 1s
kill -9 `ps -ef|grep tomcat_pot|grep -v grep|awk '{print $2}'`
sleep 1s
kill -9 `ps -ef|grep tomcat_bay|grep -v grep|awk '{print $2}'`
sleep 1s
#kill -9 `ps -ef|grep tomcat_sass|grep -v grep|awk '{print $2}'`
#sleep 1s sleep 3s sleep 3s /usr/local/tomcat/tomcat_jdt/bin/startup.sh
/usr/local/tomcat/tomcat_pot/bin/startup.sh
/usr/local/tomcat/tomcat_bay/bin/startup.sh
#/usr/local/tomcat/tomcat_sass/bin/startup.sh
  • 更新(自动解压 jar 包,不需要通过脚本来解压)
 #!/bin/bash
currenttime=`date +%Y%m%d%H%M%S` JAVA_HOME=$JAVA_HOME
PATH=$JAVA_HOME/bin:/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH #/usr/local/tomcat/tomcat_jdt/bin/./shutdown.sh
#/usr/local/tomcat/tomcat_pot/bin/./shutdown.sh
#/usr/local/tomcat/tomcat_bay/bin/./shutdown.sh
#/usr/local/tomcat/tomcat_sass/bin/./shutdown.sh kill -9 `ps -ef|grep tomcat_jdt|grep -v grep|awk '{print $2}'`
sleep 1s
kill -9 `ps -ef|grep tomcat_pot|grep -v grep|awk '{print $2}'`
sleep 1s
kill -9 `ps -ef|grep tomcat_bay|grep -v grep|awk '{print $2}'`
sleep 1s
#kill -9 `ps -ef|grep tomcat_sass|grep -v grep|awk '{print $2}'`
#sleep 1s sleep 3s rm -rf /usr/local/tomcat/tomcat_jdt/webapps/dt*
rm -rf /usr/local/tomcat/tomcat_pot/webapps/pt*
#rm -rf /usr/local/tomcat/tomcat_sass/webapps/his*
rm -rf /usr/local/tomcat/tomcat_bay/webapps/ob* sleep 1s cp /data/www/war/dt/dt.war /usr/local/tomcat/tomcat_jdt/webapps/dt.war
cp /data/www/war/dt/dt.war /usr/local/tomcat/tomcat_pot/webapps/pt.war
cp /data/www/war/dt/dt.war /usr/local/tomcat/tomcat_bay/webapps/ob.war
#cp /data/www/war/dt/dt.war /usr/local/tomcat/tomcat_sass/webapps/his.war sleep 3s /usr/local/tomcat/tomcat_jdt/bin/startup.sh
/usr/local/tomcat/tomcat_pot/bin/startup.sh
/usr/local/tomcat/tomcat_bay/bin/startup.sh
#/usr/local/tomcat/tomcat_sass/bin/startup.sh mv /data/www/war/dt/dt.war /data/www/war/dt/bak/dt$currenttime.war
  • 更新(需要通过脚本来解压 jar 包)
 #!/bin/bash
currenttime=`date +%Y%m%d%H%M%S` echo "kill tomcat_service"
kill -9 `ps -ef|grep tomcat_service|grep -v grep|awk '{print $2}'`
sleep 3s echo "Delete tomcat_service files"
rm -rf /usr/local/tomcat_service/webapps/ROOT/*
sleep 1s cp /usr/local/upload_war/service_core.war /usr/local/tomcat_service/webapps/ROOT/service_core.war
sleep 3s echo "change dir"
cd /usr/local/tomcat_service/webapps/ROOT
echo "cur dir"
$cd pwd jar -xvf service_core.war
sleep 1s echo "startup tomcat_service"
/usr/local/tomcat_service/bin/startup.sh echo "save tomcat_service war"
mv /usr/local/upload_war/service_core.war /usr/local/upload_war/bak/service_core$currenttime.war
sleep 1s

sh 脚本重启/更新 Tomcat 项目的更多相关文章

  1. 普通用户操作tomcat项目时报:Neither the JAVA_HOME nor the JRE_HOME environment variable is defined At least one of these environment variable is needed to run this program

    在使用普通用户更新tomcat项目适合出现这个信息,Neither the JAVA_HOME nor the JRE_HOME environment variable is defined At ...

  2. 脚本:将git项目下载到本地并启动

    大致思路:从git上clone源代码到本地:使用mvn package将源代码达成war/jar包:将打好的包放到tomcatpath/webapps/下:到tomcatpath/bin/下执行res ...

  3. Tomcat项目自动部署脚本

    一般情况下使用的Linux环境都是加固的,root路径只有超级管理员权限才能进入.我们新建一个自己的用户,在/home下会有一个用户目录,传输war包都放在这个目录下,此时不动webapps文件下的内 ...

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

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

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

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

  6. 写了个关于tomcat项目部署脚本 shell

    #!/bin/bash tomcat_project_path=" /server/tomcat" tomcat_cp_path="/root/tools/apache- ...

  7. Shell 脚本 —— java 代码远程调用shell脚本重启 tomcat

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 1.创建maven 工程 ​ maven 依赖: <dependency> <grou ...

  8. Jenkins构建完成之后运行脚本可以杀掉TomCat但是起不来的解决方法

    Jenkins构建完成之后运行脚本可以杀掉TomCat但是起不来的解决方法 写了一个重启tomcat的脚本,让jenkins编译.打包.发布时调用.在本地写好重启tomcat的脚本后,本地执行脚本没有 ...

  9. shell实现自动部署两台tomcat项目Ⅱ

    本次分为3个脚本, scp.sh放进第一台机器(负责传输文件), schenglee.sh放进第一台机器(自动部署), schenglee2.sh放进第二台机器(自动部署) 环境 tomcat1: 1 ...

随机推荐

  1. 利用ChromeOptions()加载用户配置

    一. 如何绕过页面登录 我们在登录网站的时候,通常需要输入用户名.密码和验证码,那么有没有办法绕过登录环节呢? 有两种方法可以解决这个问题,一种是利用chrome浏览器的用户配置,一种是利用cooki ...

  2. webpack vue-cli 一有空格和分号就报错

    webpack vue-cli 一有空格和分号就报错 eslintrc.js 这是ESLint的配置文件,至于为什么用ESLint的话,就是为了自动检查代码,保持一致的代码风格,从而保证代码质量. 这 ...

  3. Tomcat部署项目后有括号的处理方法

    常见的问题,收录整理了一下,方便查找. 如下3个地方都修改为一致即可解决. 1,右键项目名 --> properties --> 输入web project settings --> ...

  4. Nhibernate系列学习之(五) 存储过程

    NHibernate也是能够操作存储过程的,不过第一次配置可能会碰到很多错误. 一.删除 首先,我们新建一个存储过程如下: CREATE PROC DeletePerson @Id int AS DE ...

  5. 基于zepto移动4*3九宫格转奖

    最近根据公司需求,要把移动端的圆形转盘抽奖,改为九宫格的形式,查找资料搞定了,纪录下demo代码. 页面的展现样式,如下 比较简单,就是红色的背景图,在这10个格子里转动 具体代码如下 html &l ...

  6. 把数据库里面的数据导出来csv

    function export_csv($filename, $data, $head = '') { $string = $head; foreach ($data as $key => $v ...

  7. file_put_contents();

    file_put_contents(); 用于获取文件中的内容,可以填写网址,但是需要以http://开头

  8. BZOJ- 2733: 永无乡 (并查集&线段树合并)

    题意:给定N个节点,K次操作,操作有两种,1是合并两个集合,2是求某个集合的第K大(从小到大排序). 思路:合并只要启发式即可.此题可以用线段树,保存1到N的排序的出现次数和. 复杂度O(NlogN) ...

  9. Docker-安装与部署

    本文在CentsOS下安装Docker 1.安装前准备工作 系统要求: 在CentOS下需要64位的CentsOS 7  OS requirements To install Docker, you ...

  10. ASP.net之HttpModel

    HttpModule是向实现类提供模块初始化和处置事件.当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任何处理,也就是说此时对于H ...