6
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

tar.gz を捨てて zip を使おう

Posted at

よく使われるこれらのアーカイブ形式ですが、主な違いとして、tar.gzではファイルをtarでアーカイブした後gzipで圧縮するのに対し、zipでは圧縮した個々のファイルをアーカイブするという点あります。これにより、zipでは特定のファイルを指定して解凍することが迅速に可能です。

tar.gz zip
圧縮方式 Deflate Deflate
アーカイブと圧縮 アーカイブが先 圧縮が先
ランダムアクセス(解凍) できない できる
ランダムアクセス(追加・削除) できない できる1
Linuxファイル属性2の保存 される される3
プレインストール Linux, MacOS Linux, MacOS, Windows

圧縮方式はどちらも同じなのでファイルサイズや圧縮時間には大差ありません(ただし圧縮される個々のファイルがとても小さく互いに似ている場合、ファイルをまたいで共通の符号を使える分tar.gzの方が小さくなりうる)。ソフトウェアパッケージの配布ではランダムアクセスが必要になることがあまり無いのでtar.gzでも良いですが、データのアーカイブなどでは明らかにzipの方が便利です。ということで皆さん積極的にzipを使っていきましょう。

参考

  1. ただし、配列内部への挿入・削除と同じく後続のファイルを動かす必要があるので O(n) になる。それでも圧縮自体をやり直す必要はないのでアーカイブを作り直すよりは速い。また、-urオプションでは変更のあったファイルのみ検出して圧縮できる。

  2. mdatemodeのこと。

  3. Info-zip実装。

6
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?