圧縮されたファイルをtarコマンドで展開した際に ._
で始まる謎のファイルが出てきて困りました。
この対処法と原因について記述します。
結論
$ tar -xvf --exclude '._*' src.tar
--exclude
オプションを利用して ._
で始まるファイルが展開されないように指定するとOKです。
参考:【 tar 】コマンド――アーカイブファイルを作成する/展開する
補足
$ tar -cvf --exclude '._*' src.tar src1 src2 src3
圧縮時に --exclude
オプションを利用して ._
で始まるファイルを含めないようにすることも出来ます。
前提
- 圧縮したときの環境:Mac
- 展開したときの環境:Linux
原因
Mac特有の隠しファイルが圧縮時に含まれてしまっており、それをLinux(Mac以外の環境)で展開したことが原因でした。
._
で始まるファイルは、アイコンやウィンドウの形状、メニューの内容や定義などといった情報を持つ リソースフォーク という隠しファイルです。
これがMacにおいて各ファイルそれぞれに1つ存在しており、圧縮時に知らずのうち含まれてしまっていたために、Mac以外の環境において展開時に現れたということでした。
ちなみに、Mac上で圧縮・展開をしても通常リソースフォークは見えません。