1

次のリモート フォルダー/ファイル構造があります。

/home/user/backup/siteA/regionA/data.sql
/home/user/backup/siteA/regionA/data.clean.sql
/home/user/backup/siteA/regionA/data.lite.sql
/home/user/backup/siteA/regionA/files/
/home/user/backup/siteA/regionB/data.sql
/home/user/backup/siteA/regionB/data.clean.sql
/home/user/backup/siteA/regionB/data.lite.sql
/home/user/backup/siteA/regionB/files/
/home/user/backup/siteA/regionC/data.sql
/home/user/backup/siteA/regionC/data.clean.sql
/home/user/backup/siteA/regionC/data.lite.sql
/home/user/backup/siteA/regionC/files/
/home/user/backup/siteA/regionD/data.sql
/home/user/backup/siteA/regionD/data.clean.sql
/home/user/backup/siteA/regionD/data.lite.sql
/home/user/backup/siteA/regionD/files/
/home/user/backup/siteB/regionA/data.sql
/home/user/backup/siteB/regionA/data.clean.sql
/home/user/backup/siteB/regionA/data.lite.sql
/home/user/backup/siteB/regionA/files/
/home/user/backup/siteB/regionB/data.sql
/home/user/backup/siteB/regionB/data.clean.sql
/home/user/backup/siteB/regionB/data.lite.sql
/home/user/backup/siteB/regionB/files/
/home/user/backup/a-script.sh
/home/user/backup/backup.log
/home/user/backup/siteC
...
...

私は rsync*.clean.sql*.lite.sql、siteA から同様の構造にローカルに移動する必要があります。

/var/data/dbs/siteA/regionA/data.clean.sql
/var/data/dbs/siteA/regionA/data.lite.sql

rsyncに正しいものを含めたり除外したりできないようです。やっています:

/usr/bin/rsync --archive --del --verbose --verbose --compress --progress --exclude-from=excludes.txt --rsh='ssh -q' --dry-run user@remote:/home/user/backup/siteA /var/data/dbs/siteA

そして、私の excludes.txt には以下が含まれています:

+ *.clean.sql
+ *.lite.sql
- *

しかし、私はただ得ます:

receiving incremental file list
[sender] hiding directory siteA because of pattern *

これをサイト地域ごとに実行できるスクリプトがありますが、「全体」としては実行できません。除外リストに星とスラッシュを追加しようとしましたが、正しい組み合わせが見つからないようです。助言がありますか?

アップデート

私はより良い結果を得ました

/usr/bin/rsync --archive --del --compress --progress --exclude-from=excludes.txt --rsh='ssh -q' user@remote:/home/user/backup/siteA /var/data/dbs/siteA

excludes.txt で

+ */
+ *.clean.sql
+ *.lite.sql
- *

ただし、それはすべてのファイルフォルダーの内容も解析し(スキップ/除外しますが)、速度を大幅に低下させます(そして、巨大なディレクトリリストでrsync出力を汚染します)。

「maxdepth」パラメータはありますか?!

4

1 に答える 1

0

どうですか:

cd /home/user/backup
find site* -name data.clean.sql -o -name data.lite.sql > filestobackup
rsync --archive --verbose --del --compress --progress \
--files-from=filestobackup -d \
--rsh='ssh -q' \
user@remote:/home/user/backup/ /var/data/dbs/
于 2012-08-08T12:19:19.137 に答える