Files
note2any/build.sh
2025-10-10 17:00:09 +08:00

60 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
set -e # 出错立即退出
# 1. 构建
MODE="$1"
BUILD_CMD=(npm run build)
if [[ "$MODE" == "obf" ]]; then
BUILD_CMD=(npm run build:obf)
echo "🏗️ 开始构建(启用混淆)..."
else
echo "🏗️ 开始构建(不启用混淆)..."
fi
if "${BUILD_CMD[@]}"; then
echo "✅ 构建成功"
echo
else
echo "❌ 构建失败,脚本终止"
echo
exit 1
fi
# 2. 目标目录
PLUGIN_DIR=~/myweb/.obsidian/plugins/note-to-mp
FILES=("main.js" "styles.css" "manifest.json")
# 3. 遍历文件,逐一备份并覆盖
for FILE in "${FILES[@]}"; do
TARGET="$PLUGIN_DIR/$FILE"
BACKUP="$PLUGIN_DIR/backup/$FILE.bk"
if [ -f "$TARGET" ]; then
mkdir -p "$(dirname "$BACKUP")"
cp -f "$TARGET" "$BACKUP"
echo "💾 已备份 $TARGET -> $BACKUP"
fi
if [ -f "$FILE" ]; then
cp -f "$FILE" "$TARGET"
echo "📂 已更新 $TARGET"
else
echo "⚠️ 源文件 $FILE 不存在,跳过"
fi
done
# 4. 覆盖复制 assets 目录(静默)
if [ -d "assets" ]; then
mkdir -p "$PLUGIN_DIR/assets"
rsync -a --delete assets/ "$PLUGIN_DIR/assets/" >/dev/null
echo "🎨 已同步 assets -> $PLUGIN_DIR/assets/"
echo
else
echo "⚠️ 源目录 assets 不存在,跳过"
echo
fi
echo "✅ 部署完成!"
echo