14 changed files with 120 additions and 21 deletions
@ -0,0 +1,36 @@ |
|||||
|
#!/bin/bash |
||||
|
# 执法码2.0 - 启动脚本 |
||||
|
# 用法: ./start.sh |
||||
|
|
||||
|
APP_HOME="/efcode20" |
||||
|
JAR_NAME="zdxt-job-ep.jar" |
||||
|
PROFILES="prod,prod-job-ep" |
||||
|
LOG_FILE="${APP_HOME}/zdxt-job-ep.log" |
||||
|
|
||||
|
JAR_PATH="${APP_HOME}/${JAR_NAME}" |
||||
|
|
||||
|
# 检查 jar 是否存在 |
||||
|
if [ ! -f "$JAR_PATH" ]; then |
||||
|
echo "[FAIL] ${JAR_PATH} 不存在" |
||||
|
exit 1 |
||||
|
fi |
||||
|
|
||||
|
# 检查是否已在运行 |
||||
|
PID=$(pgrep -f "${JAR_NAME}" 2>/dev/null) |
||||
|
if [ -n "$PID" ]; then |
||||
|
echo "[INFO] 服务已在运行 (PID: ${PID})" |
||||
|
exit 0 |
||||
|
fi |
||||
|
|
||||
|
# 启动服务 |
||||
|
echo "[INFO] 启动 ${JAR_NAME} ..." |
||||
|
nohup java -jar "${JAR_PATH}" --spring.profiles.active=${PROFILES} > "${LOG_FILE}" 2>&1 & |
||||
|
NEW_PID=$! |
||||
|
sleep 1 |
||||
|
|
||||
|
if kill -0 "$NEW_PID" 2>/dev/null; then |
||||
|
echo "[OK] 启动成功 (PID: ${NEW_PID})" |
||||
|
else |
||||
|
echo "[FAIL] 启动失败,请查看日志: ${LOG_FILE}" |
||||
|
exit 1 |
||||
|
fi |
||||
@ -0,0 +1,38 @@ |
|||||
|
#!/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 |
||||
Loading…
Reference in new issue