Linux根据jar包先kill正在运行的进程,再重新运行jar包

这篇文章详细描述了一个使用bash脚本start.sh来监控并管理Java应用(test.jar)的部署过程,包括检查应用是否运行、获取PID、杀死进程并重新启动,以确保部署后的服务正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

start.sh脚本

#!/bin/bash
source /data/admin
pid=`ps -ef|grep test.jar| grep -v grep | awk '{print $2}'`
echo "部署前的pid进程 :$pid"
if [ -n "$pid" ]
  then
    kill -9 $pid
else
    echo "进程没有启动"
fi
sleep 3s

nohup java -Xms512m -Xmx1024m -jar test.jar --spring.profiles.active=test >> nohup.out 2>&1 &
echo "脚本执行完毕"
sleep 3s

pid=`ps -ef|grep test.jar | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
  then
        echo "部署后的pid进程 :$pid"
                echo "启动成功"
else
    echo "进程没有启动"
fi

脚本步骤

  1. 先检查jar包是否正在运行中,运行中拿到pid然后kill掉当前进场
  2. 重新运行jar包
  3. 查看jar包是否运行成功
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值