#!/bin/bash
APP_NAME="tools-server"; APP_DIR="$(cd "$(dirname "$0")" && pwd)"; BINARY="$APP_DIR/$APP_NAME"; PID_FILE="/var/run/$APP_NAME.pid"; LOG_DIR="$APP_DIR/logs"
mkdir -p "$LOG_DIR"
case "$1" in
  start)
    if [ -f "$PID_FILE" ] && kill -0 $(cat "$PID_FILE") 2>/dev/null; then echo "服务已在运行 (PID: $(cat $PID_FILE))"; exit 1; fi
    echo "启动 $APP_NAME..."; cd "$APP_DIR"
    nohup "$BINARY" > "$LOG_DIR/app.log" 2>&1 & echo $! > "$PID_FILE"
    echo "已启动 (PID: $!)，访问 http://localhost:8080" ;;
  stop)
    if [ ! -f "$PID_FILE" ]; then echo "服务未运行"; exit 1; fi
    PID=$(cat "$PID_FILE"); echo "停止 $APP_NAME (PID: $PID)..."
    kill "$PID" 2>/dev/null; rm -f "$PID_FILE"; echo "已停止" ;;
  restart) $0 stop; sleep 2; $0 start ;;
  status)
    if [ -f "$PID_FILE" ] && kill -0 $(cat "$PID_FILE") 2>/dev/null; then echo "服务运行中 (PID: $(cat $PID_FILE))"; else echo "服务未运行"; fi ;;
  *) echo "用法: $0 {start|stop|restart|status}"; exit 1 ;;
esac
