#!/bin/bash
#java env
#shell腳本有時候調用linux的環境變量會有問題,所以這裏還是把用到的java環境再設置一下
export JAVA_HOME=/usr/local/jdk1.7
#app name 爲了確保腳本通用
APP_NAME=lagou-service
SERVICE_DIR=/home/lagou/$APP_NAME
SERVICE_NAME=lagou-service
APP_JAR=$SERVICE_NAME\.jar
#啓動app的時候,將進程的pid保存在這裏,方便以後殺死進程用
APP_PID=$SERVICE_NAME\.pid
cd $SERVICE_DIR
case "$1" in
start)
#/dev/null 就不會有nohup.out文件了。
nohup $JAVA_HOME/bin/java -Xms32m -Xmx128m -jar $APP_JAR >/dev/null 2>&1 &
#將pid寫入文件
echo $! > $SERVICE_DIR/$APP_PID
echo "===== start $SERVICE_NAME"
;;
stop)
kill `cat $APP_PID`
#刪除掉pid文件
rm -f $SERVICE_DIR/$APP_PID
#查看是不是殺死進程了
sleep 5
#獲得進程號,複製號兩邊不能留空格
pid=`ps -ef | grep -w $SERVICE_NAME | grep -v grep | awk '{print $2}'`
#判斷相等兩邊要留空格
if ["$pid" == ""];then
echo "=== kill successfully "
else
echo "===== kill fail and try to kill -9"
echo "==== the pid is $pid"
kill -9 $pid
fi
echo "stop finished"
;;
*)
echo "please use start or stop 參數"
;;
esac
exit 0
linux jar包啓動腳本
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.