rsyncフィルタを正しく使用するには?

rsyncフィルタを正しく使用するには?

私のファイルを尊重するようにrsyncを取得することはできません.rsync-filter。ファイルがどのように機能するのかが正しく理解されていないためです。

デフォルトでは、フォルダとファイルの$HOME名前は同じですが、コンテンツが異なり、同期したい別のディレクトリにフィルタを作成しました。私のホームディレクトリにあるフィルタファイルは(ある程度)動作しているようですが、他のフィルタファイルは動作しないようです。

以下はコマンドです。rsync -auzvrR --no-l --no-H --filter='dir-merge /.rsync-filter' --exclude='venvs' --exclude='from_git' $HOME /mnt/backups/obk/ --dry-run > $HOME/Documents/rsync_results/home.txt私のホームディレクトリにあるフィルタファイルは次のとおりです。

# rsync filter for /home dir

+ /[Dd]ocuments
+ /[Dd]ocuments/***
+ /[Dd]ownloads
+ /[Dd]ownloads/***
+ /[Mm]usic
+ /[Mm]usic/**
+ /[Pp]ictures
+ /[Pp]ictures/***
+ /[Vv]ideos
+ /[Vv]ideos/***
+ /.anacron
+ /.anacron/***
+ /.bash_aliases
+ /.bashrc
+ /.blerc
- *

私のSteamディレクトリにあるコマンドrsync -auzvvrR --no-l --no-H --filter='dir-merge /.rsync-filter' $HOME/.var/app/com.valvesoftware.Steam/data/Steam Music/ --dry-run > $HOME/Documents/rsync_results/steam.txtとその外観は次のとおりです。 (フィルタファイルを別のディレクトリに入れようとしましたが、役に立ちませんでした。)

+ /userdata
+ /userdata/***
+ /home/[REDACTED]/.var/app/com.valvesoftware.Steam/steamapps/common
+ /home/[REDACTED]/.var/app/com.valvesoftware.Steam/steamapps/common/***

ご覧のとおり、フルパスと相対パスの両方を試してみましたが、違いはありません。

これは次の出力ですtree

/home/[REDACTED]/.var/app/com.valvesoftware.Steam
├── cache -> .cache
├── config -> .config
├── data -> .local/share
├── Music
└── Pictures

.rsync-filter自分のホームディレクトリにファイルを作成し、rsyncそのファイルに指定したファイルとフォルダのみを同期するにはどうすればよいですか?また、除外するファイルおよび/またはフォルダ名文字列を含めることはできますか?


編集する:Freddyのコメントで言及されているアドバイスは効果があります。しかし、サブディレクトリの1つにある特定のフォルダを除外したいと思います。

フィルタは次のとおりです。

# rsync -auvzR --no-l --no-H --filter='dir-merge .rsync-filter' /home/[REDACTED]/.var/app/com.valvesoftware.Steam/data/Steam --dry-run
+ /steamapps
+ /steamapps/common/***
+ /userdata
+ /userdata/***
### These dirs do not get excluded
- /steamapps/common/Proton - Experimental
- /steamapps/common/Proton EasyAntiCheat Runtime
- /steamapps/common/Steam.dll             # file
- /steamapps/common/Steam Controller Configs
- /steamapps/common/SteamLinuxRuntime_soldier
- /steamapps/common/Steamworks Shared
###
- *

関連情報