小池啓仁 ヒロヒト応援ブログ By はてな

小池啓仁(コイケヒロヒト)の動画など。

小池啓仁 ヒロヒト応援ブログ By はてな

zip と gzip について

実はgzipは、GNUのzipで、zipのGNUバージョンだと思っていたのですが、最近間違えであったことに気が付きました。
それは、zipが圧縮アーカイバなのに対して、gzipアーカイバでなく、単なる圧縮機能なのです。
ちなみに、アーカイバというのは、複数のファイルを一つのファイルにまとめる機能をもつものかな。
なので、アーカイバとしてはtarを使い、それをgzipで圧縮するのがLinuxでは普通らしい・・・その時の拡張子は『.tar.gz』で2重の拡張子になる。


しかし、Windowsでは、標準機能としてtarもgzipもありません。
なので、Windowsでtar.gzのファイルを作るのは、結構苦労することになるのです。
フリーのソフトを使ったり、ActivePerlならCPANからppmしたり・・・。


そうそうPerlでは、tarとzipは標準モジュールArchiveにあるのですが、gzipは標準モジュールにないのです*1
なので、CPANからgzipができそうなモジュールをppmして実行するのですが、なにせ解説が英語だし、ネットで検索しても有用な情報がほとんどありません。
ppmを上手く実行してインストールするのも大変だし、インストールしたモジュールを動かすのも大変なのですね・・・実は。
Windowsでのgzipモジュールインストールの苦労話しは、別の機会にするとして・・・今日のまとめです。


zip と gzipは全くの別物で、zipが圧縮アーカイバで、gzipは圧縮のみです。
ですので、アーカイバにはtarを使い、それをgzipする。


ちなみに、UnixにはCompressという標準の圧縮コマンドがありますが、特許の問題でフリーのUnix系ではgzipが使われるとのことです。

*1:標準モジュールArchiveのtarにgzip機能がありました 2009/01/16追記