2

「--files-from」で rsync を使用しており、このリストのパスの 1 つを除外してフィルターで「保護」したいのですが、うまくいかないようです。

これは私のセットアップです:

/backuplist.txt ファイルの内容:

path1
path2/and/more

rsync コマンドは次のようになります。

rsync -aHr --filter "protect path1/*" $dry --progress --delete --force --inplace --delete-after --files-from=/backuplist.txt /source /target

私が望むのは、「/source/path1」と「/source/path2/and/more」から「/target/path1」と「/target/path2/and/more」にファイルを再帰的にコピーすることです。ターゲット パスに存在するソース パスに存在しないものはすべて削除する必要があります。

次のフィルターを試しましたが、うまくいきませんでした:

--filter "protect path1/*"
--filter "protect path1/"
--filter "protect path1"
--filter "protect /path1"

どんな助けでも大歓迎です!

4

1 に答える 1

8

入力していただきありがとうございますが、読んでテストした後、解決策を見つけました:

これの代わりに:

--filter "protect path1/*"

次のようにする必要があります。

--filter "protect path1/**/*"

1回のrsync呼び出しで魅力的に機能します。

于 2013-10-10T07:55:10.290 に答える