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
735 B

#!/bin/bash
# 执法码2.0 - 停止脚本
# 用法: ./stop.sh
JAR_NAME="zdxt-job-ep.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