#!/bin/bash #set -x set -e dirPath=/home/www/deploy/ssh-server serverName=ssh-server logPath=/home/www/deploy/ssh-server/logs/ssh-websocket/ssh-websocket.log cmd=$1 profiles=${2:-"dev"} echoPrefix="\033[36m+" echoSuffix="\033[0m" #------------------------------------------------------------------- JAVA_MEM_OPTS=" -DappName=${serverName} -server -Xmx2g -Xms2g" DATABASE_OPTS=" -Ddatabase.codeset=ISO-8859-1 -Ddatabase.logging=false" JAVA_OPTS_EXT=" -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dapplication.codeset=UTF-8 -Dfile.encoding=UTF-8 -Duser.timezone=Asia/Shanghai" #------------------------------------------------------------------- startServer() { pid=$1 if [ -z $pid ];then echo -e "$echoPrefix cd $dirPath $echoSuffix" cd $dirPath echo -e "$echoPrefix java $JAVA_MEM_OPTS $DATABASE_OPTS $JAVA_OPTS_EXT -jar ./ssh-websocket-0.0.0-SNAPSHOT.jar --spring.profiles.active=global,$profiles --server.port=9999 >>/dev/null 2>&1 & $echoSuffix" java $JAVA_MEM_OPTS $DATABASE_OPTS $JAVA_OPTS_EXT -jar ./ssh-websocket-0.0.0-SNAPSHOT.jar --spring.profiles.active=global,$profiles --server.port=9999 >>/dev/null 2>&1 & echo "$serverName 启动成功!" else echo "$serverName 正在运行..." fi echo "查看日志: tail -F $logPath -n 100" } stopServer() { pid=$1 if [ -z $pid ];then echo "$serverName 未运行" else echo -e "$echoPrefix ps -ef | grep "DappName=${serverName}" | grep -v 'grep' | awk '{print \$2}' | xargs kill $echoSuffix" ps -ef | grep "DappName=${serverName}" | grep -v 'grep' | awk '{print $2}' | xargs kill echo "$serverName 已停止!" fi } logs() { tail -F $logPath -n 100 } pid=`ps -ef | grep "DappName=${serverName}" | grep -v 'grep' | awk '{print $2}'` # 操作参数: start stop kill log logs if [ "$cmd" == "start" ];then startServer $pid elif [ "$cmd" == "stop" ] || [ "$cmd" == "kill" ];then stopServer $pid elif [ "$cmd" == "log" ] || [ "$cmd" == "logs" ];then logs else if [ -z $pid ];then echo "$serverName 未运行 | 输入操作参数: start stop kill log logs" else echo "输入操作参数: start stop kill log logs" echo "pid=$pid | $serverName 正在运行... | 查看日志: tail -F $logPath -n 100" fi fi # bash <(curl -s http://git.yvanui.com/lizhiwei/jztd-deploy/raw/master/yxt-yn/deploy-ssh-server.sh) [cmd profiles]