1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| #!/bin/bash
JAR_NAME="your-app.jar" APP_NAME="your-app"
PID=$(ps -ef | grep "$JAR_NAME" | grep -v grep | awk '{print $2}')
if [ -n "$PID" ]; then echo "发现运行中的进程 PID: $PID,正在停止..." kill -9 $PID sleep 2 echo "进程已停止" else echo "未发现运行中的进程" fi
echo "正在启动 $JAR_NAME..." nohup java -jar $JAR_NAME > $APP_NAME.log 2>&1 &
sleep 2
NEW_PID=$(ps -ef | grep "$JAR_NAME" | grep -v grep | awk '{print $2}') if [ -n "$NEW_PID" ]; then echo "启动成功,PID: $NEW_PID" else echo "启动失败,请检查日志" exit 1 fi
|