Files
track/track-uniapp/sync-watch.sh

30 lines
1.0 KiB
Bash

#!/bin/bash
# ============================================================
# uni-app 双向同步脚本
# WSL ←→ Windows G 盘,两边改代码互相跟随
# 用法: bash sync-watch.sh 停止: Ctrl+C
# ============================================================
SRC="/home/yueli/track/track-uniapp"
DST="/mnt/g/Track/track-app/track"
EXCLUDES="--exclude node_modules --exclude .git --exclude dist --exclude unpackage --exclude .hbuilderx --exclude package.json --exclude package-lock.json --exclude vite.config.ts --exclude uni.scss --exclude uni.promisify.adaptor.js"
do_sync() {
rsync -av $EXCLUDES "$SRC/" "$DST/" 2>/dev/null
sleep 0.5
rsync -av $EXCLUDES "$DST/" "$SRC/" 2>/dev/null
}
echo "🔁 双向同步 $SRC$DST"
echo " 按 Ctrl+C 停止"
do_sync
echo "✅ 首次同步完成,开始监听..."
inotifywait -m -r -e modify,create,delete,move \
--exclude 'node_modules|.git|dist|unpackage|.hbuilderx' \
"$SRC" 2>/dev/null | while read -r dir action file; do
do_sync
echo "$(date +%H:%M:%S) 已同步"
done