chore: 以本地为准,上传全部并替换 GitHub
This commit is contained in:
45
scripts/start.sh
Normal file
45
scripts/start.sh
Normal file
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
# 神射手 - 智能启动脚本(端口冲突检查 + 指定端口)
|
||||
# 端口: 3117(见 端口登记.md)
|
||||
# 用法: ./scripts/start.sh [--kill] # --kill 自动终止占用进程
|
||||
|
||||
set -e
|
||||
cd "$(dirname "$0")/.."
|
||||
PORT=3117
|
||||
AUTO_KILL=false
|
||||
[[ "$1" == "--kill" ]] && AUTO_KILL=true
|
||||
|
||||
# 检查端口是否被占用
|
||||
check_port() {
|
||||
if lsof -i :$PORT >/dev/null 2>&1; then
|
||||
echo "⚠️ 端口 $PORT 已被占用:"
|
||||
lsof -i :$PORT
|
||||
echo ""
|
||||
if $AUTO_KILL; then
|
||||
echo "正在终止占用进程..."
|
||||
lsof -ti :$PORT | xargs kill -9 2>/dev/null || true
|
||||
sleep 2
|
||||
else
|
||||
echo "解决方式:"
|
||||
echo " 1) 运行 ./scripts/start.sh --kill 自动终止后启动"
|
||||
echo " 2) 或手动执行: lsof -ti :$PORT | xargs kill -9"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
echo "=== 神射手 启动 ==="
|
||||
echo "端口: $PORT | 访问: http://localhost:$PORT"
|
||||
echo ""
|
||||
|
||||
check_port
|
||||
|
||||
# 优先 pnpm,其次 npm
|
||||
if command -v pnpm &>/dev/null; then
|
||||
pnpm dev
|
||||
elif command -v npm &>/dev/null; then
|
||||
npm run dev
|
||||
else
|
||||
echo "❌ 未找到 pnpm 或 npm"
|
||||
exit 1
|
||||
fi
|
||||
Reference in New Issue
Block a user