123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- #!/bin/bash
- # 前端页面源代码软著申请专用拼接脚本
- # 功能:将所有前端HTML文件完整拼接成单一文档,专用于软件著作权申请材料
- #
- # 与现有generate_frontend_sourcecode.py的差异:
- # - 现有脚本:分批生成,适用于AI对话(避免token超限)
- # - 本脚本: 单文件生成,适用于软著申请(便于提交)
- #
- # 优点:
- # - 生成单一完整文档,符合软著申请要求
- # - 保持源代码完整性,无压缩或分批
- # - 零token消耗,纯本地文本处理
- # - 直接可用于软著申请提交
- echo "🔄 开始拼接前端页面源代码..."
- # 设置路径
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
- FRONT_DIR="${SCRIPT_DIR}/output_sourcecode/front"
- OUTPUT_DIR="${SCRIPT_DIR}/output_docs"
- OUTPUT_FILE="${OUTPUT_DIR}/前端源代码.txt"
- # 确保输出目录存在
- mkdir -p "${OUTPUT_DIR}"
- # 检查前端目录
- if [ ! -d "${FRONT_DIR}" ]; then
- echo "❌ 前端目录不存在: ${FRONT_DIR}"
- echo "💡 请先生成前端源代码文件"
- exit 1
- fi
- # 获取所有HTML文件
- HTML_FILES=($(find "${FRONT_DIR}" -name "*.html" | sort))
- if [ ${#HTML_FILES[@]} -eq 0 ]; then
- echo "❌ 未找到HTML文件"
- echo "💡 请检查 ${FRONT_DIR} 目录"
- exit 1
- fi
- echo "📁 找到 ${#HTML_FILES[@]} 个HTML文件"
- # 清空输出文件
- > "${OUTPUT_FILE}"
- # 拼接所有文件(不添加头部信息,保持纯代码格式)
- for html_file in "${HTML_FILES[@]}"; do
- filename=$(basename "$html_file")
- echo "📄 处理: $filename"
-
- # 添加文件分隔符
- echo "/* ================= $filename ================= */" >> "${OUTPUT_FILE}"
- echo "" >> "${OUTPUT_FILE}"
-
- # 直接追加文件内容
- cat "$html_file" >> "${OUTPUT_FILE}"
-
- # 添加文件结束分隔符
- echo "" >> "${OUTPUT_FILE}"
- echo "/* ================= $filename 结束 ================= */" >> "${OUTPUT_FILE}"
- echo "" >> "${OUTPUT_FILE}"
- echo "" >> "${OUTPUT_FILE}"
- done
- # 显示结果
- if [ -f "${OUTPUT_FILE}" ]; then
- file_size=$(wc -c < "${OUTPUT_FILE}")
- line_count=$(wc -l < "${OUTPUT_FILE}")
-
- echo "✅ 拼接完成!"
- echo "📁 输出文件: ${OUTPUT_FILE}"
- # 兼容性处理文件大小显示
- if [ $file_size -gt 1048576 ]; then
- size_str="$(awk "BEGIN {printf \"%.1f MB\", $file_size/1048576}")"
- elif [ $file_size -gt 1024 ]; then
- size_str="$(awk "BEGIN {printf \"%.1f KB\", $file_size/1024}")"
- else
- size_str="${file_size} bytes"
- fi
- echo "📊 文件大小: ${size_str}"
- echo "📋 总行数: $line_count"
- echo ""
- echo "💡 使用说明:"
- echo " - 此文件包含所有前端页面的完整源代码"
- echo " - 可直接用于软著申请材料"
- echo " - 无需AI处理,节省token消耗"
- else
- echo "❌ 生成失败"
- exit 1
- fi
|