#!/bin/bash # daemon 方式启动前后端 dev server,进程独立于调用者 shell set -e ROOT="$(cd "$(dirname "$0")/.." && pwd)" API_PID_FILE="$ROOT/.dev-api.pid" WEB_PID_FILE="$ROOT/.dev-web.pid" # 清理残留 for f in "$API_PID_FILE" "$WEB_PID_FILE"; do [ -f "$f" ] && kill $(cat "$f") 2>/dev/null; rm -f "$f" done cd "$ROOT/apps/api" nohup npx nest start --watch > /tmp/api-dev.log 2>&1 & API_PID=$! echo $API_PID > "$API_PID_FILE" cd "$ROOT/apps/web" nohup npx next dev -p 3001 > /tmp/web-dev.log 2>&1 & WEB_PID=$! echo $WEB_PID > "$WEB_PID_FILE" echo "后端已启动 (PID $API_PID) - 日志: /tmp/api-dev.log" echo "前端已启动 (PID $WEB_PID) - 日志: /tmp/web-dev.log" echo "" echo "前端: http://localhost:3001" echo "后端: http://localhost:4000" echo "" echo "停止: npm run dev:stop"