stop.sh 1007 Bytes
#!/bin/bash
# 停止 LangGraph 服务

APP_DIR="$HOME/langgraph"
PID_FILE="$APP_DIR/logs/app.pid"

if [ ! -f "$PID_FILE" ]; then
    echo "PID 文件不存在,尝试查找进程..."
    PID=$(ps aux | grep start_server_direct.py | grep -v grep | awk '{print $2}' | head -1)
    if [ -z "$PID" ]; then
        echo "服务未运行"
        exit 0
    fi
else
    PID=$(cat "$PID_FILE")
fi

if ps -p "$PID" > /dev/null 2>&1; then
    echo "正在停止服务 (PID: $PID)..."
    kill "$PID"
    
    # 等待进程结束
    for i in {1..10}; do
        if ! ps -p "$PID" > /dev/null 2>&1; then
            echo "✅ 服务已停止"
            rm -f "$PID_FILE"
            exit 0
        fi
        sleep 1
    done
    
    # 如果还在运行,强制杀死
    if ps -p "$PID" > /dev/null 2>&1; then
        echo "强制停止服务..."
        kill -9 "$PID"
        sleep 1
    fi
    
    rm -f "$PID_FILE"
    echo "✅ 服务已停止"
else
    echo "服务未运行"
    rm -f "$PID_FILE"
fi