| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- #!/bin/bash
- # 一键打包分发:只打代码与运行所需文件,本机密钥与数据(config.json / session.json /
- # manual-shops.json / data/ 等)绝不进包 —— 对方启动后会自动生成他们本机的配置。
- cd "$(dirname "$0")" || exit 1
- NAME="智慧运营中台-分发包"
- OUT="../$NAME"
- ZIP="../$NAME.zip"
- rm -rf "$OUT" "$ZIP"
- mkdir -p "$OUT"
- # 白名单文件(代码 / 模板 / 启动脚本 / 文档)
- for f in server.js napos-service.js reports-store.js reports-mcp.js nl-query.js report-html.js imageMeta.js \
- package.json package-lock.json config.example.json README.md \
- 启动.command 启动.sh 启动.bat; do
- [ -f "$f" ] && cp "$f" "$OUT/"
- done
- # 目录(前端 / 取数引擎 / 依赖)
- for d in public napos node_modules; do
- [ -d "$d" ] && cp -R "$d" "$OUT/"
- done
- find "$OUT" -name ".DS_Store" -delete 2>/dev/null
- (
- cd .. || exit 1
- zip -qr "$NAME.zip" "$NAME"
- )
- if [ ! -f "$ZIP" ]; then
- echo "打包失败:$ZIP 未生成"; exit 1
- fi
- rm -rf "$OUT"
- echo "已生成分发包: $ZIP"
- echo "包内不含 config.json / session.json / manual-shops.json / data/"
- echo "(API Key、Cookie、报表数据只留在你本机)"
- echo "对方解压后双击 启动.command(macOS)或 启动.bat(Windows)即可,"
- echo "首次启动会自动生成他们本机的配置,并在「系统设置」里填自己的 API Key。"
- echo "若对方电脑装过旧版:把包解压覆盖到原目录即可(不要先删旧目录),"
- echo "其历史 config.json / session.json 会被新版直接读取,API Key 与 Cookie 无需重填。"
|