Initial commit from WSL migration
This commit is contained in:
58
scripts/pack_and_serve.sh
Executable file
58
scripts/pack_and_serve.sh
Executable file
@@ -0,0 +1,58 @@
|
||||
#!/bin/bash
|
||||
# WSL 端:打包项目并临时提供 HTTP 下载
|
||||
# 运行方式:bash scripts/pack_and_serve.sh
|
||||
|
||||
set -e
|
||||
|
||||
PROJECT_DIR="/home/rwu/WSLprojects/AICODE-2026"
|
||||
CLAUDE_GLOBAL_DIR="/home/rwu/.claude"
|
||||
PACK_DIR="/tmp/aicode_transfer"
|
||||
ARCHIVE_NAME="aicode2026_transfer.tar.gz"
|
||||
PORT=8899
|
||||
|
||||
echo "=== 准备打包 ==="
|
||||
rm -rf "$PACK_DIR"
|
||||
mkdir -p "$PACK_DIR"
|
||||
|
||||
echo "→ 打包项目文件..."
|
||||
tar -czf "$PACK_DIR/project.tar.gz" \
|
||||
--exclude=".git" \
|
||||
--exclude="__pycache__" \
|
||||
--exclude="*.pyc" \
|
||||
-C "$(dirname "$PROJECT_DIR")" \
|
||||
"$(basename "$PROJECT_DIR")"
|
||||
|
||||
echo "→ 打包全局 Claude 配置..."
|
||||
tar -czf "$PACK_DIR/claude_global.tar.gz" \
|
||||
--exclude=".git" \
|
||||
-C "$(dirname "$CLAUDE_GLOBAL_DIR")" \
|
||||
"$(basename "$CLAUDE_GLOBAL_DIR")"
|
||||
|
||||
echo "→ 合并为一个压缩包..."
|
||||
tar -czf "/tmp/$ARCHIVE_NAME" -C "$PACK_DIR" .
|
||||
|
||||
FILESIZE=$(du -sh "/tmp/$ARCHIVE_NAME" | cut -f1)
|
||||
LAN_IP=$(hostname -I | awk '{print $2}')
|
||||
|
||||
echo ""
|
||||
echo "=== 打包完成 ==="
|
||||
echo "文件大小:$FILESIZE"
|
||||
echo ""
|
||||
echo "=== 启动 HTTP 服务 ==="
|
||||
echo "在 Mac Mini 上执行以下命令:"
|
||||
echo ""
|
||||
echo " bash <(curl -s http://$LAN_IP:$PORT/setup_on_mac.sh)"
|
||||
echo ""
|
||||
echo "或者分两步:"
|
||||
echo " curl -O http://$LAN_IP:$PORT/$ARCHIVE_NAME"
|
||||
echo " curl -O http://$LAN_IP:$PORT/setup_on_mac.sh && bash setup_on_mac.sh"
|
||||
echo ""
|
||||
echo "按 Ctrl+C 停止服务"
|
||||
echo "========================"
|
||||
|
||||
# 把 setup 脚本也放进服务目录
|
||||
cp "$(dirname "$0")/setup_on_mac.sh" /tmp/
|
||||
cp "/tmp/$ARCHIVE_NAME" /tmp/
|
||||
|
||||
cd /tmp
|
||||
python3 -m http.server $PORT
|
||||
Reference in New Issue
Block a user