Files
vue-driven-cloud-storage/upload-tool/build.sh
WanWanYun cb05fa9516 功能: 添加Linux上传工具打包脚本
- 新增upload-tool/build.sh支持Linux环境打包
- 支持自动检测操作系统并打包对应版本
- 为部署脚本集成自动打包功能做准备
2025-11-12 00:37:28 +08:00

98 lines
2.8 KiB
Bash
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
################################################################################
# 玩玩云上传工具打包脚本 (Linux版本)
################################################################################
set -e
echo "========================================"
echo "玩玩云上传工具打包脚本"
echo "========================================"
echo ""
# 颜色定义
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m'
# 检查Python是否安装
if ! command -v python3 &> /dev/null; then
echo -e "${RED}[错误] 未检测到Python 3请先安装Python 3.7+${NC}"
exit 1
fi
echo -e "${GREEN}Python版本:${NC} $(python3 --version)"
echo ""
# 进入上传工具目录
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$SCRIPT_DIR"
echo "[1/4] 安装依赖包..."
pip3 install -r requirements.txt --quiet || {
echo -e "${RED}[错误] 依赖安装失败${NC}"
exit 1
}
echo -e "${GREEN}✓ 依赖安装完成${NC}"
echo ""
echo "[2/4] 安装PyInstaller..."
pip3 install pyinstaller --quiet || {
echo -e "${RED}[错误] PyInstaller安装失败${NC}"
exit 1
}
echo -e "${GREEN}✓ PyInstaller安装完成${NC}"
echo ""
echo "[3/4] 打包程序..."
# 检测操作系统
OS_TYPE=$(uname -s)
if [[ "$OS_TYPE" == "Linux" ]]; then
echo -e "${YELLOW}注意: 在Linux系统上打包将生成Linux可执行文件${NC}"
echo -e "${YELLOW}如需Windows exe文件请在Windows系统上运行 build.bat${NC}"
echo ""
# 打包为Linux可执行文件
pyinstaller --onefile --name="wanwanyun-upload-tool" upload_tool.py || {
echo -e "${RED}[错误] 打包失败${NC}"
exit 1
}
# 重命名并添加执行权限
mv dist/wanwanyun-upload-tool "dist/玩玩云上传工具" 2>/dev/null || true
chmod +x "dist/玩玩云上传工具" 2>/dev/null || true
elif [[ "$OS_TYPE" == MINGW* ]] || [[ "$OS_TYPE" == MSYS* ]] || [[ "$OS_TYPE" == CYGWIN* ]]; then
echo "检测到Windows环境打包为Windows exe..."
pyinstaller --onefile --windowed --name="玩玩云上传工具" --icon=NONE upload_tool.py || {
echo -e "${RED}[错误] 打包失败${NC}"
exit 1
}
else
echo -e "${YELLOW}未识别的操作系统: $OS_TYPE${NC}"
echo "尝试打包..."
pyinstaller --onefile --name="wanwanyun-upload-tool" upload_tool.py || {
echo -e "${RED}[错误] 打包失败${NC}"
exit 1
}
fi
echo -e "${GREEN}✓ 打包完成${NC}"
echo ""
echo "[4/4] 清理临时文件..."
rm -rf build
rm -f *.spec
echo -e "${GREEN}✓ 清理完成${NC}"
echo ""
echo "========================================"
echo -e "${GREEN}打包完成!${NC}"
echo "输出目录: dist/"
ls -lh dist/ | tail -n +2 | awk '{print " - " $9 " (" $5 ")"}'
echo "========================================"