@echo off REM 收银台sy项目打包脚本 (Windows版本) REM 用途:将sy项目打包成zip文件,排除不必要的文件 chcp 65001 >nul setlocal enabledelayedexpansion echo 开始打包收银台sy项目... echo. REM 获取脚本所在目录 set "SCRIPT_DIR=%~dp0" set "PROJECT_ROOT=%SCRIPT_DIR%.." set "SY_DIR=%SCRIPT_DIR%" REM 设置输出目录和文件名 set "OUTPUT_DIR=%PROJECT_ROOT%" for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /value') do set datetime=%%I set "TIMESTAMP=%datetime:~0,8%_%datetime:~8,6%" set "ZIP_NAME=sy_cashier_%TIMESTAMP%.zip" set "ZIP_PATH=%OUTPUT_DIR%\%ZIP_NAME%" echo 项目目录: %SY_DIR% echo 输出文件: %ZIP_PATH% echo. REM 检查是否有7-Zip或WinRAR where 7z >nul 2>&1 if %errorlevel% equ 0 ( set "ZIP_CMD=7z" set "ZIP_ARGS=a -tzip" goto :create_zip ) where winrar >nul 2>&1 if %errorlevel% equ 0 ( set "ZIP_CMD=winrar" set "ZIP_ARGS=a -afzip" goto :create_zip ) REM 如果没有找到压缩工具,提示用户 echo 错误: 未找到压缩工具(7-Zip 或 WinRAR) echo 请安装 7-Zip 或 WinRAR,或手动打包以下文件: echo. echo HTML文件: dir /b *.html | findstr /v "copy bak" echo. echo 目录: echo css\ echo js\ echo images\ echo. pause exit /b 1 :create_zip echo 复制文件... echo. REM 创建临时目录 set "TEMP_DIR=%TEMP%\sy_package_%RANDOM%" mkdir "%TEMP_DIR%" 2>nul REM 复制HTML文件(排除备份文件) for %%f in (*.html) do ( echo %%f | findstr /i "copy bak" >nul if errorlevel 1 ( copy "%%f" "%TEMP_DIR%\" >nul echo [OK] %%f ) ) REM 复制目录 if exist "css" ( xcopy /E /I /Y "css" "%TEMP_DIR%\css\" >nul echo [OK] css\ ) if exist "js" ( xcopy /E /I /Y "js" "%TEMP_DIR%\js\" >nul echo [OK] js\ ) if exist "images" ( xcopy /E /I /Y "images" "%TEMP_DIR%\images\" >nul echo [OK] images\ ) REM 复制文档文件 for %%f in (README.md QUICK_START.md API_CONFIG.md SETUP_CHECKLIST.md LAUNCH_QUICK_REFERENCE.txt start.bat start_3001.sh start_server.py) do ( if exist "%%f" ( copy "%%f" "%TEMP_DIR%\" >nul echo [OK] %%f ) ) echo. echo 创建压缩包... REM 切换到临时目录并创建zip cd /d "%TEMP_DIR%" %ZIP_CMD% %ZIP_ARGS% "%ZIP_PATH%" * >nul REM 清理临时目录 cd /d "%SCRIPT_DIR%" rd /s /q "%TEMP_DIR%" 2>nul REM 检查文件大小 for %%A in ("%ZIP_PATH%") do set "FILE_SIZE=%%~zA" set /a FILE_SIZE_MB=%FILE_SIZE% / 1048576 set /a FILE_SIZE_KB=%FILE_SIZE% / 1024 echo. echo ======================================== echo 打包完成! echo ======================================== echo 文件路径: %ZIP_PATH% echo 文件大小: %FILE_SIZE_KB% KB echo. echo 可以使用以下命令查看详细内容: echo %ZIP_CMD% l "%ZIP_PATH%" echo. pause