linux shell java服务启动重启脚本


服务启动脚本

平时自己项目修改后重新部署太麻烦了,就自己写了一个shell脚本

脚本可以重启或重新部署项目,并保存旧jar包

#!/bin/bash
. /etc/profile

serviceName=$1".jar"

echo 'get serviceName '$serviceName

pid=`ps -ef | grep $serviceName | grep -v 'grep' | awk '{print $2}'`

echo 'start kill task pid:'$pid

kill -9 $pid

if [ "$?" -eq 0 ]; then
        echo 'kill task success'
else
        echo  'kill task fail retcode:'$?
fi

path='/自定义路径/'$serviceName #自己设置想要的路径

if [ -e '/放置新jar包路径/'$serviceName ]; then

        nowDate=`date +"%Y%m%d%H%M%S"`
        echo 'user ner jar,mv old '$serviceName' file'
        mv /自定义路径/$serviceName /放置旧jar包路径/"$serviceName""$nowDate"
        mv /放置新jar包路径/$serviceName /自定义路径/$serviceName
else

        echo 'cant find new jar,restart service'
fi

nohup java -jar $path >'/root/'$1'.log' &

newPid=`ps -ef | grep $serviceName | grep -v 'grep' | awk '{print $2}'`

echo 'start service'$1'success,pid:'$newPid
#在bash中调用
./xxx.sh serverName

仅作为记录用,并不适合直接使用,可以拿去抄作业修改下在自己服务器用

PS:如果发现运行shell脚本有权限问题

  • 使用 shell xxx.sh param1 可以直接运行
  • 输入 chmod u+x xxx.sh 设置脚本权限 之后就可以 ./xxx.sh param1


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM