#!/bin/sh## java env
#export JAVA_HOME=/data/jdk1.8.0_121
#export JRE_HOME=$JAVA_HOME/jre## service name
#当前目录
SERVICE_DIR=$(cd `dirname $0`; pwd)
echo "======$SERVICE_DIR"
#jar包路径
JAR_DIR=`ls -ltr $SERVICE_DIR/*.jar| tail -1`
echo "JAR_DIR==== $JAR_DIR"
#jar包名字
SERVICE_NAME=${JAR_DIR##*/}
#日志名字
LOG_NAME=${SERVICE_NAME%.*}PID=$LOG_NAME\.pidif test ! -d "./logs/" ;thenecho "logs/ directory does not exist,creating....."mkdir logs
ficase "$1" instart)nohup java -jar -Xms1024m -Xmx1024m $SERVICE_NAME > logs/$LOG_NAME.log 2>&1 &echo $! > $SERVICE_DIR/$PIDecho "=== start $SERVICE_NAME"
;;stop)kill `cat $SERVICE_DIR/$PID`rm -rf $SERVICE_DIR/$PIDecho "=== stop $SERVICE_NAME"sleep 5P_ID=`ps -ef | grep -w "$SERVICE_NAME" | grep -v "grep" | awk '{print $2}'`if test "$P_ID" == "" ; thenecho "=== $SERVICE_NAME process not exists or stop success"elseecho "=== $SERVICE_NAME process pid is:$P_ID"echo "=== begin kill $SERVICE_NAME process, pid is:$P_ID"kill -9 $P_IDfi
;;restart)$0 stopsleep 2$0 startecho "=== restart $LOG_NAME"
;;*)echo "Usage:$0 {start|stop|restart}"
;;esac
exit 0