.DS_Storeを含めずにzip圧縮する方法


送ってもらったzipファイルを開いたら、変なファイル(.DS_Storeのこと)が入ってる!

Mac環境で作ったzipをWindows環境の人に送った時に言われた事がある人はいるのではないでしょうか。
あるからといって、害を及ぼすファイルではないですが、Window環境の人には邪魔なファイルでしかないので、.DS_Storeを含めずにzipを作って渡してあげましょう。

特定のファイルを含めずにzip圧縮

zip directory-name.zip -r directory-name/ -x "*.DS_Store"

※directory-nameの部分は読み替えてください。

.DS_Storeを含めずにディレクトリをzip圧縮するコマンドです。
zipコマンドの「-x」オプションを使うことで、ファイルを明示的に除外しています。

特定のファイルを含めずにzip圧縮しつつ、パスワードをかける

zip -e directory-name.zip -r directory-name/ -x "*.DS_Store"

「パスワードをかけて、パスワードを別メールで送る」

この行為に意味があるのかはさておき、zipにパスワードをかけないといけない場面はたまにあります。
そんな時は-eオプションを付与して、パスワードをかけましょう。

zipファイルから特定のファイルを取り除く

zip -d filename.zip '*.DS_Store'

上のやり方で圧縮をおこなっていれば使うことは多分無いですが、一応。
「-d」オプションでzip内の.DS_Storeを消しています。
-xオプション付けずに圧縮してしまった場合にでも使ってみてください。