まず、私はこのトピックについて多くを読んだ。Rsyncフィルタ:1つのパターンのみをコピー)、それでも理解できなかったり、インストールに問題があるようです…
私の構造「from」は次のとおりです。
Windows
Users
User1
Documents
doc1.txt
doc2.txt
AppData
Downloads
User2
Documents
doc3.txt
doc4.txt
AppData
Downloads
すべてのユーザーに対してすべてのドキュメントフォルダとサブフォルダをバックアップしたいのですが、AppDataとダウンロード構造はバックアップしたくありません。
私が望む目的地について:
Users
User1
Documents
doc1.txt
doc2.txt
User2
Documents
doc3.txt
doc4.txt
私は多くのパターンを試しましたが、それらのどれもうまくいきませんでした。これから始めましょう:
rsync -av --include="*/" --exclude="*/AppData" --exclude="*/Downloads" /source/Users /destination
各ユーザーのAppDataとダウンロードフォルダとサブフォルダを除外するにはどうすればよいですか?
ありがとう
ほぼ同じ内容を議論する別のスレッドがあります(私がよく理解した場合)。 絶対パスを使用した rsync とサブパスの除外
私の状況に合わせて回答を調整しましたが、アプリケーションデータとダウンロードはまだターゲットパスに存在します。
rsync -av --no-p --include="*/" --include="*/Documents/**" --exclude="** /source/Users /destination
ベストアンサー1
多くのシェルには記号は*
含まれていません/
(前に来る代わりに.
)(参照男7ボールとglobstar
|)dotglob
オプションがshopt
あるので除外する場合アプリケーションデータそしてダウンロードフルパスを提供する必要があります。源泉(--exclude="*/*/AppData" --exclude="*/*/Downloads"
)または名前のみを保持します(--exclude="AppData" --exclude="Downloads"
)ディレクトリがどのレベルにあるかは関係ありません。
rsync -av --exclude="AppData" --exclude="Downloads" /source/Users /destination