一、项目文件为一个 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. R语言基础入门之二:数据导入和描述统计

    by 写长城的诗 • October 30, 2011 • Comments Off This post was kindly contributed by 数据科学与R语言 - go there t ...

  2. poj2135最小费用流

    裸题,就是存个模板 最小费用流是用spfa求解的,目的是方便求解负环,spfa类似于最大流中的bfs过程 #include<map> #include<set> #includ ...

  3. android横屏布局文件设置

    一.AndroidManifest.xml配置 1.在AndroidManifest.xml的activity(需要禁止转向的activity)配置中加入   android:screenOrient ...

  4. 解析Ceph: 恢复与数据一致性

    转自:https://www.ustack.com/blog/ceph-internal-recovery-and-consistency/ 作为一个面向大规模的分布式存储系统,故障处理是作为一个常态 ...

  5. KNN cosine 余弦相似度计算

    # coding: utf-8 import collections import numpy as np import os from sklearn.neighbors import Neares ...

  6. vue自定义全局组件(自定义插件)

    有时候我们在做开发的时候,就想自己写一个插件然后就可以使用自己的插件,那种成就感很强.博主最近研究element-ui和axios的时候,发现他们是自定义组件,但是唯一有一点不同的是,在用elemen ...

  7. 用node.js可以开启静态服务 不需要借助apache 或者xampl

    安装好了Node以及express,然后用express命令生成express架构, 目录结构下面有一个public页面, 把你的静态页面放到这个文件夹下, 通过npm start,开启服务就可以在浏 ...

  8. mysql 数据备份及pymysql模块

    一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: #1. 测试+链接 ...

  9. WinForm判断程序是否已经在运行,且只允许运行一个实例

    我们开发WinFrom程序,很多时候都希望程序只有一个实例在运行,避免运行多个同样的程序,一是没有意义,二是容易出错. 为了更便于使用,笔者整理了一段自己用的代码,可以判断程序是否在运行,只运行一个实 ...

  10. hdu 1671 Phone List (Trie树)

    简单的字典树应用,在建树的时候判断就行了. 需要注意的语法: 在使用malloc和free来处理动态内存的时候,仅仅是释放了这个对象所占的内存,而不会调用这个对象的析构函数:使用new和delete就 ...