定期的にrsyncを介して同期するディレクトリがありますrsync -rva
。今日、私はたとえば、私が持っている多くのファイルのrsyncターゲットに名前を持つ空のファイルpath/to/S00041.jpg
もあることを発見しました。path/to/._S00041.jpg
誰が作ったのかと思いますrsync
が、確信はありません。これらのファイルはすべて、元のファイルと同じタイムスタンプを持っているため、いつ表示されたのかわかりません。
ソースディレクトリとターゲットディレクトリはどちらもMac OSにあります。これが何らかの方法で役立つ場合は、他の場所とコンピュータからこのディレクトリに同期します(ただし、ディレクトリ構造は常に同じです)。
これがrsyncによって行われているかどうか、そしてその理由は不思議です。 rsyncで自動的に「修正」する方法もありますか?
答え1
MacOSでは、各ファイルの「リソースフォーク」に追加情報を保存できます。デフォルトのMacOSファイルシステムでは、この追加情報はファイル自体の一部として(透明に)保存されます。ただし、非ネイティブファイルシステムにファイルをコピーする場合は、リソースフォークを別々に保存する必要があります。これらは._*
ファイルです。最新のアプリケーションはリソースフォークではなくリソースファイルを生成する傾向があるため、これらのデータをエクスポートすると、すべてが単一のファイルに保存されます。
長さがゼロの場合、安全に削除できます。
find /path -name '._*' -type f -size 0 -delete
スキップすることを選択できますが、rsync
条件付きでスキップすることはできません。つまり、長さが0の場合にのみ可能です。
引用: