linux简版启动,关闭jar命令
启动命令:start.sh
#!/bin/sh DEFAULT_JAR_NAME="tongyan-resource-0.0.1-SNAPSHOT" JAVA_HOME=/home/tjgeo/tools/jdk1.8.0_251 LOG_PATH='/home/tjgeo/logs/resource' # 环境变量配置 export PATH=$PATH:$JAVA_HOME/bin CLASSPATH=$JAVA_HOME/lib/ JAVA_HOME # 接收参数/拼接jar路径 JAR_NAME=${1:-$DEFAULT_JAR_NAME} JAR_FILE="../${JAR_NAME}.jar" # 日志目录检查 [ ! -d "$LOG_PATH" ] && mkdir -p "$LOG_PATH" && echo ">>> 日志目录已创建:$LOG_PATH <<<" # jar包存在性检查 [ ! -f "$JAR_FILE" ] && echo ">>> 错误:jar包不存在!路径:$JAR_FILE <<<" && exit 1 # 启动应用 rm -f tpid nohup java -jar "$JAR_FILE" >> "$LOG_PATH/nohup.log" 2>&1 & echo $! > tpid # 输出启动信息 echo ">>> 启动成功!PID=$! <<<" echo ">>> 启动jar包:$JAR_FILE <<<" echo ">>> 日志路径:$LOG_PATH/nohup.log <<<"
使用方法:
默认包名: sh 你的脚本名.sh 指定包名: sh 你的脚本名.sh my-resource-start
停止命令:stop.sh
#!/bin/bash DEFAULT_JAR_NAME="tongyan-resource-0.0.1-SNAPSHOT" # 接收参数/拼接jar名称 JAR_NAME=${1:-$DEFAULT_JAR_NAME} JAR_FILE="${JAR_NAME}.jar" # 查找进程PID PID=$(ps -ef | grep "$JAR_FILE" | grep -v grep | awk '{print $2}') # 进程判断与停止逻辑 if [ -z "$PID" ]; then echo ">>> 应用【$JAR_FILE】已停止(无相关进程) <<<" else echo ">>> 停止应用【$JAR_FILE】,PID:$PID <<<" kill $PID && sleep 3 # 检查并强制杀死残留进程 PID_CHECK=$(ps -ef | grep "$JAR_FILE" | grep -v grep | awk '{print $2}') [ -n "$PID_CHECK" ] && echo ">>> 优雅停止失败,强制杀死PID:$PID_CHECK <<<" && kill -9 $PID_CHECK echo ">>> 应用【$JAR_FILE】已停止 <<<" fi
使用方法:
默认包名: sh 你的脚本名.sh 指定包名: sh 你的脚本名.sh my-resource-stop

浙公网安备 33010602011771号