._ ファイルは OS X bsdtar
OS X 固有の拡張属性とリソース フォークを処理します。 (これは AppleDouble として知られるメカニズムであり、実際には TAR アーカイブ以外にも適用され、MacOS リソース フォークと Finder 情報を保持するためのネイティブ メカニズムがないいくつかのストレージ形式で見られます。)
それらが tar ファイルに追加されないようにするには、 COPYFILE_DISABLE=1
を渡すことができます tar への環境変数として。
COPYFILE_DISABLE=1 tar cf newTar.tar /your/files
私の理解では、tar --exclude='._*' -cvf newTar .
動作するはずです:Finder は ._*
を作成します ファイル newTar
ただし、パススルー モードで tar を呼び出すことにより、これらのファイルを完全にバイパスできます。たとえば、oldTar
からファイルのみをコピーするには some/path
未満の場合 、使用
tar -cf newTar --include='some/path/*' @oldTar
「._*」で始まるこれらのファイルは、THIS POST によると Apple 固有のロケーション インジケータ ファイルであり、同じページによると、OSX から端末にログインしている間は明らかにそれらを取り除くことはできません。 Apple 以外の OS にファイルをアップロードし、それらのファイルを削除して、再度 tar する必要があります。これが唯一の解決策のようです。