Files
claw/frontend/sgClaw验证/serve.sh
2026-03-06 03:36:12 +08:00

64 lines
2.3 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# ============================================================
# sgClaw 验证报告 — 局域网 HTTP 服务启动脚本
#
# 用法:
# ./serve.sh # 默认 8080 端口
# ./serve.sh 9090 # 指定端口
#
# 局域网访问:
# 同网段机器浏览器打开 http://<本机IP>:<端口>/index.html
# ============================================================
set -e
PORT="${1:-8080}"
DIR="$(cd "$(dirname "$0")" && pwd)"
cd "$DIR"
# 获取本机 IP (兼容银河麒麟 / Ubuntu / CentOS)
get_ip() {
# 优先取非 127 的第一个 IPv4
ip -4 addr show 2>/dev/null \
| grep -oP 'inet \K[\d.]+' \
| grep -v '127.0.0.1' \
| head -1
}
LOCAL_IP=$(get_ip)
if [ -z "$LOCAL_IP" ]; then
# fallback: hostname
LOCAL_IP=$(hostname -I 2>/dev/null | awk '{print $1}')
fi
if [ -z "$LOCAL_IP" ]; then
LOCAL_IP="<本机IP>"
fi
echo ""
echo " ╔══════════════════════════════════════════════════╗"
echo " ║ sgClaw · AI Agent 验证报告 ║"
echo " ╠══════════════════════════════════════════════════╣"
echo " ║ ║"
echo " ║ 本机访问: http://localhost:${PORT}/index.html"
echo " ║ 局域网访问: http://${LOCAL_IP}:${PORT}/index.html"
echo " ║ ║"
echo " ║ 按 Ctrl+C 停止服务 ║"
echo " ╚══════════════════════════════════════════════════╝"
echo ""
# 优先使用 Python 3兼容银河麒麟和各 Linux 发行版
if command -v python3 &>/dev/null; then
python3 -m http.server "$PORT" --bind 0.0.0.0
elif command -v python &>/dev/null; then
# Python 2 fallback
python -m SimpleHTTPServer "$PORT"
else
echo "[Error] 未找到 Python请安装 python3 或使用其他 HTTP 服务器"
echo ""
echo " 替代方案:"
echo " 1. sudo apt install python3"
echo " 2. npx serve -l $PORT (需要 Node.js)"
echo " 3. busybox httpd -f -p $PORT (银河麒麟可能自带)"
exit 1
fi