1. 程式人生 > 實用技巧 >SprintBoot專案服務啟停指令碼

SprintBoot專案服務啟停指令碼

SprintBoot專案服務啟停指令碼

vimspringboot.sh

#!/bin/bash
export BUILD_ID=DONTKILLME

APP_NAME=$2
#APP_NAME=admin-1.0-SNAPSHOT

function stop(){
  PID=`ps -ef|grep $APP_NAME|grep -v grep|grep -v springboot.sh|awk '{print $2}'`
  if [[ -n "$PID" ]];then
      echo 'Stop Process...'
      kill -15 $PID
  fi
  PID
=`ps -ef|grep $APP_NAME|grep -v grep|grep -v springboot.sh|awk '{print $2}'` if [[ -n "$PID" ]];then echo "PID: $PID" echo 'Kill Process!.....' kill -9 $PID else echo 'No pid, No process,Stop Success!....' fi } function start(){ # java -version if [ $? = 0 ];then ## nohup java
-jar ${APP_NAME}.jar --spring.config.location=conf/application.yml > /dev/null 2>&1 & JAVA_OPTS=" -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true " JAVA_MEM_OPTS=" -server -Xmx512m -Xms512m -Xmn256m -XX:PermSize=128m -Xss256k -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70
" nohup java $JAVA_OPTS $JAVA_MEM_OPTS -jar ${APP_NAME}.jar --spring.profiles.active=dev > /dev/null 2>&1 & echo $! $? echo Start Success! else echo "java is not installed" fi } function status(){ PID=`ps -ef|grep $APP_NAME|grep -v grep|grep -v springboot.sh|awk '{print $2}'` if [[ -n "$PID" ]]; then echo "PID:$PID" echo "$APP_NAME is running." else echo "$APP_NAME is downing." fi } ## 入口 case $1 in start) start ;; stop) stop ;; status) status ;; *) echo "./springboot.sh start/stop/status" ;; esac exit 0

指令碼使用:

  shspringboot.sh ($1)stop ($2)admin-1.0-SNAPSHOT

  $1 為start stop status

  $2 為啟動的jar包的名稱