You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
754 B
38 lines
754 B
#!/bin/bash
|
|
# 执法码2.0 网关 - 停止脚本
|
|
# 用法: ./stop.sh
|
|
|
|
JAR_NAME="zdxt-gateway-web-server.jar"
|
|
SHUTDOWN_WAIT=15
|
|
|
|
# 查找进程
|
|
PID=$(pgrep -f "${JAR_NAME}" 2>/dev/null)
|
|
if [ -z "$PID" ]; then
|
|
echo "[INFO] 服务未在运行"
|
|
exit 0
|
|
fi
|
|
|
|
echo "[INFO] 停止 ${JAR_NAME} (PID: ${PID}) ..."
|
|
|
|
# 优雅停止
|
|
kill "$PID" 2>/dev/null
|
|
|
|
# 等待退出
|
|
COUNT=0
|
|
while kill -0 "$PID" 2>/dev/null; do
|
|
if [ $COUNT -ge $SHUTDOWN_WAIT ]; then
|
|
echo "[WARN] ${SHUTDOWN_WAIT}s 未退出,强制终止..."
|
|
kill -9 "$PID" 2>/dev/null
|
|
sleep 1
|
|
break
|
|
fi
|
|
sleep 1
|
|
((COUNT++))
|
|
done
|
|
|
|
if kill -0 "$PID" 2>/dev/null; then
|
|
echo "[FAIL] 停止失败 (PID: ${PID})"
|
|
exit 1
|
|
else
|
|
echo "[OK] 已停止"
|
|
fi
|
|
|