#!/usr/bin/env bash
|
set -euo pipefail
|
source "$(dirname "$0")/lib.sh"
|
|
stop_backend() {
|
stop_pid_file "$BACKEND_PID" "后端"
|
pkill -f "$ROOT/backend/.venv/bin/uvicorn app.main:app" 2>/dev/null || true
|
pkill -f "uvicorn app.main:app --host 127.0.0.1 --port $BACKEND_PORT" 2>/dev/null || true
|
if command -v fuser >/dev/null 2>&1; then
|
fuser -k "${BACKEND_PORT}/tcp" 2>/dev/null || true
|
fi
|
}
|
|
stop_frontend() {
|
stop_pid_file "$FRONTEND_PID" "前端"
|
pkill -f "$ROOT/frontend/node_modules/.bin/vite" 2>/dev/null || true
|
}
|
|
case "${1:-all}" in
|
backend) stop_backend ;;
|
frontend) stop_frontend ;;
|
all)
|
stop_frontend
|
stop_backend
|
;;
|
*)
|
echo "用法: $0 [all|backend|frontend]"
|
exit 1
|
;;
|
esac
|
|
echo "完成"
|