次のリモート フォルダー/ファイル構造があります。
/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
rsyn
cに正しいものを含めたり除外したりできないようです。やっています:
/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」パラメータはありますか?!