28 lines
597 B
Bash
Executable File
28 lines
597 B
Bash
Executable File
#!/bin/zsh
|
|
|
|
set -e
|
|
|
|
PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
PORT=8899
|
|
LOG_PATH="/tmp/smart-fin-chart-server.log"
|
|
URL="http://localhost:${PORT}/"
|
|
|
|
cd "$PROJECT_DIR"
|
|
|
|
if ! command -v pnpm >/dev/null 2>&1; then
|
|
echo "未找到 pnpm,请先安装 pnpm 后重试。"
|
|
exit 1
|
|
fi
|
|
|
|
if lsof -n -P -iTCP:"$PORT" -sTCP:LISTEN >/dev/null 2>&1; then
|
|
echo "端口 ${PORT} 已有服务,直接打开现有页面。"
|
|
else
|
|
nohup pnpm start >"$LOG_PATH" 2>&1 &
|
|
SERVER_PID=$!
|
|
echo "服务已启动(PID: ${SERVER_PID}),日志:${LOG_PATH}"
|
|
sleep 1
|
|
fi
|
|
|
|
open "$URL"
|
|
echo "已打开:${URL}"
|