shell脚本杀进程,重新启动jar包

BUILD_ID="dontKillMe"
#### 需要提供的参数
pwd
ifconfig

#原始工程存放路径
orifiles="/"
# spring 安装目录
springBase="/"
#jdk安装路径
java_home='/usr/java/jdk1.8.0_212-amd64/bin/java'
#nacos登录用户名
nacos_username='aaa'
#nacos登录密码
nacos_password='bbb'
#nacos入口
nacos_addr='11.22.44.66:80'
#jvm大小设置
#Xms='Xms200m'
#Xmx='Xmx200m'

#nacos命名空间
nacos_namespace='abc'
# 工程名称
name="service"


##杀服务
set -e
## 停springboot-服务
echo -e `date +'%Y-%m-%d %H:%M:%S'`
echo "开始停止${springBase}服务!"
echo "....."
springpid=`ps ax | grep ${name} | grep -v grep | awk '{print $1}'`
echo -e `date +'%Y-%m-%d %H:%M:%S'`
echo "在运行的程序服务进程号 ${springBase}-pid为: ${springpid} "
echo "....."
if [ -n "$springpid" ]; then
echo -e `date +'%Y-%m-%d %H:%M:%S'`
echo "正在停止进程 ... killing ${springBase} ... pid:${springpid}"
echo "....."
kill -9 ${springpid}
echo -e `date +'%Y-%m-%d %H:%M:%S'`
echo "停止${name}成功!"
echo "....."
fi
echo "....."
sleep 2s



##删除缓存
cd ${springBase}
rm -rf ${springBase}/${name}
cp ${orifiles}/${name}-bin-1.0.zip ${springBase}

unzip -o ${name}-bin-1.0.zip
cd ${springBase}/${name}

#设置环境变量
export PATH=${path}

pwd
#启动
${java_home} -Dspring.profiles.active=test -Dspring.cloud.nacos.config.username=${nacos_username} -Dspring.cloud.nacos.config.password=${nacos_password} -Dspring.cloud.nacos.config.server-addr=${nacos_addr} -Dspring.cloud.nacos.config.namespace=${nacos_namespace} -jar ${name}.jar >>${springBase}/${name}/nohup.out &

原文地址:https://www.cnblogs.com/daiwl/p/14202431.html