#!/bin/bash
# 根路徑
BASE_DIR=/文件名
# 應(yīng)用名
APP_NAME=包名.jar
# 應(yīng)用路徑
APP_PATH=${BASE_DIR}/webapps/${APP_NAME}
# 臨時路徑
TMP_PATH=${BASE_DIR}/tmp
usage() {
echo "Usage: sh 執(zhí)行腳本.sh [start|stop|restart|status]"
exit 1
}
is_exist() {
pid=$(ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}')
if [ -z "$pid" ]; then
return 1
else
return 0
fi
}
start() {
is_exist
if [ $? -eq "0" ]; then
echo "$APP_NAME is already running. pid=$pid ."
else
nohup java -Xms2048m -Xmx2048m -jar ${APP_PATH} --server.port=8082 --xxl.job.executor.port=9992 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=${TMP_PATH}/purchase-$(date "+%Y-%m-%d%H:%M:%S").hprof >/dev/null 2>&1 &
fi
}
stop() {
is_exist
if [ $? -eq "0" ]; then
kill -9 $pid
else
echo "$APP_NAME is not running"
fi
}
status() {
is_exist
if [ $? -eq "0" ]; then
echo "$APP_NAME is running. pid is $pid"
else
echo "$APP_NAME is NOT running."
fi
}
restart() {
stop
start
}
case "$1" in
"start")
start
;;
"stop")
stop
;;
"status")
status
;;
"restart")
restart
;;
*) usage ;;
esac
啟動/停止命令:sh 文件名.sh start/stop