はじめに
- macでfinderからzip化をしたファイルを、windowsで展開すると、
__MACOSX
や.DS_Store
が紛れ込んだ。 - windows環境のお客様にzipファイルを送付し、展開頂いた際に、「これらはファイルは何ですか?」と聞かれ、「無視してください」というしかなかった。
- これらのファイルを避けてzip化する方法を調べた。
__MACOSX
、.DS_Store
とは?
__MACOSX
とは?
-
__MACOSX
はresorce forkと呼ばれるもの - resorce fork
- Classic Mac OS特有のファイルの構造
- アイコン、ウィンドウの形状、メニューの内容、定義、古くはアプリケーションコード(機械語)などといった、フォーマットがある程度定型化された情報を持つ
- 逆にデータ部分はdata forkと呼ばれる
-
__MACOSX
はmac osで表示スピードをあげることなどに役立つ - windowsでは関係のないファイル
参考:リソースフォーク
.DS_Store
とは?
- ファルダ可視化、アイコン位置などのメタ情報が含まれる
- mac OSで自動的に生成される
- 隠しファイルの一つ
- windowsでは関係のないファイル
- DSとはdesk sreviceの略
参考 : .DS_STORE
zip化で含めない方法
__MACOSX
はterminalからのzip化で含めない。
-
__MACOSX
はterminalからのzip化することで含めずにzip化が可能です。
# test というディレクトリをzip化する
zip -r test.zip test/
※上記の方法以外にもサードパーティーのツールを使って、__MACOSX
を含めない方法もあるようですが、割愛します。
.DS_Store
はzip化のoptionで含めない。
-
.DS_Store
はzip化のoption(-x)を用いることで、含めずにzip化が可能です。
# .DS_Storeを指定して含めない
zip -r test.zip test/ -x "*.DS_Store"
# 隠しファイルをすべて除外
zip -r test.zip test/ -x "*.*"