rsync は、特定のファイルを除くすべてを除外します。

rsync は、特定のファイルを除くすべてを除外します。

特定のファイルを除くすべてのファイルを除外する方法はrsync

rsync一部の特定のファイル(ファイルなど)を除くすべてのファイルを除外するためにを使用して特定のファイルのみをバックアップしようとしましたが、.mdこのページのすべてのソリューションは機能しませんでした。

$ rsync -vua --exclude="*" --include="*.md" ../log ./
sending incremental file list

sent 19 bytes  received 12 bytes  62.00 bytes/sec
total size is 0  speedup is 0.00

$ rsync -vua --include="*.md" --exclude="*" ../log ./
sending incremental file list

sent 19 bytes  received 12 bytes  62.00 bytes/sec
total size is 0  speedup is 0.00

$ du -sh ../log
1016M   ../log

$ apt-cache policy rsync
rsync:
  Installed: 3.2.7-0ubuntu0.22.04.2
  Candidate: 3.2.7-0ubuntu0.22.04.2
  Version table:
 *** 3.2.7-0ubuntu0.22.04.2 500
        500 http://ca-toronto-1-ad-1.clouds.archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages
        100 /var/lib/dpkg/status
     3.2.3-8ubuntu3 500
        500 http://ca-toronto-1-ad-1.clouds.archive.ubuntu.com/ubuntu jammy/main amd64 Packages

ベストアンサー1

私はあなたが下のどこからでもファイルをコピーしたいと思います../log

名前がパターンと一致すると、コマンドラインの残りのパターンは使用さ--include--excludeません(「最初の一致が勝利」)。*/パターンと一致しない場合は決して繰り返されません--include

*.mdこれらの考慮事項を念頭に置いて、マッチングとマッチングの前に次のことを行っ*/てください。--include*--exclude

rsync --archive --update --verbose --include='*.md' --include='*/' --exclude='*' ../log .

空のディレクトリを作成したくない場合は、-mまたはを追加してください。--prune-empty-dirs

おすすめ記事