gzipとは、UNIX系OSを中心に利用されているファイル圧縮方式である。また、UNIX系OSにおいて同形式によるファイル圧縮を実行するためのコマンドのことである。
gzipは、従来UNIX系OSで主流であった圧縮方式に「compress」に変わる圧縮方式として開発された。圧縮率はcompressよりも高い。拡張子には多くの場合「.gz」が付く。gzip(およびcompress)によって圧縮されたファイルを展開するには、gzipのオプション「gzip -d」コマンドや、gunzip、zcatなどが用いられる。
gzipは複数ファイルをまとめるアーカイバとしての機能を持っていない。アーカイバのtarと組み合わせることで、圧縮アーカイブを作成することができる。gzipとtarの併用によって作成された圧縮アーカイブには、「.tar.gz」もしくは「.tgz」という拡張子が付く。
なお、gzipと、Windowsなどでもよく利用されるZIP(ZIP圧縮)との間には、互換性はない。
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/10/23 13:59 UTC 版)
|
|
この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 (2014年11月)
|
| |
|
| 作者 | |
|---|---|
| 開発元 | GNUプロジェクト |
| 初版 | 1992年10月31日 |
| 最新版 |
1.14[1] |
| リポジトリ | |
| プログラミング 言語 |
C言語 |
| 対応OS | クロスプラットフォーム |
| 種別 | データ圧縮 |
| ライセンス | GPL-3.0-or-later |
| 公式サイト | www |
| 拡張子 | .gz |
|---|---|
| MIMEタイプ | application/gzip |
| タイプコード | Gzip |
| UTI | org.gnu.gnu-zip-archive |
| マジック ナンバー |
1f 8b |
| 開発者 | |
| 種別 | データ圧縮 |
| ウェブサイト | www |
gzip(ジー・ジップ)は、データ圧縮プログラムのひとつ、およびその圧縮データのフォーマットである。「GNU zip」の略であり[2] GNUプロジェクトによって開発・メンテナンスされている。現在、多くのUNIXに標準搭載される。
それ以前に普及していたcompressの圧縮アルゴリズムはLZWだが、LZWは特許を侵害していたのでGNUプロジェクトが代替としてgzipを開発した[3][注 1]。
フォーマットはRFC 1952「GZIP File Format Specification」として文書化されている。
Windows及びDOS文化圏で一般的なZIPと互換性はないが、圧縮方法は両者ともDeflate法である[4]。
gzipは、Lempel-Zivアルゴリズム (LZ77) とハフマン符号を用いており、従来のcompressよりも圧縮率が高いことが特徴である[5]。ただし非常に冗長なファイルでは、compressの方が圧縮率が高いこともある。開発者向けにライブラリとしてzlibが作成され、これにより広く使われる形式となった。gzipによって圧縮されたファイルの拡張子は慣習的に.gzを用いる(極初期のgzipは.zを用いたが、packとの混同を避けるため変更された。1993年頃に作成された.zはgzipファイルの可能性が高い。なお、gzip自体はpack形式の伸長が可能である)。
また、gzipコマンドは標準入力から受け取ったデータを圧縮し、標準出力から取り出すことができる(gunzipは逆の動作)[5]ため、ファイル圧縮に限らず、多様な目的に使用できる。
gzipはzip等と異なりファイルアーカイバとしての機能は持たず、複数ファイルを扱いたい場合はtarファイルをgzip圧縮するという使い方が一般的である[5]。GNU tarにはアーカイブをgzipにフィルタする-zオプションが付いている。これによりアーカイブと圧縮を同時に、あるいは抽出と伸張を同時に行うことができる[6]。gzip圧縮したtarアーカイブは拡張子.tar.gzまたは.tgzを付ける習慣がある。
HTTP 1.1にはデータを圧縮し転送量を減らす機能があるが、gzipはその際の圧縮フォーマットの一つとしても使われている[7]。また、gzipはその仕様が RFC 1952で記述されている。
初期のうちに登場した1.2.4が安定したバージョンとして長期にわたって利用されたが、4GB超のファイルへの対応が無かったため、種々のバージョンアップが行われた。
今日では、圧縮・伸張の速度より圧縮率の高さを重視する場合には、bzip2やxzを使用することがある[8]。
gzipは、zip、compress、compress -H、packで圧縮されたファイルを伸張することができる。zipファイルについては、Deflate法で圧縮されファイルが1つしか含まれていない場合にだけ伸張できる[5]。gzipがインストールされているシステムでは、gunzip、zcat、uncompressコマンドが、gzipコマンドへのハードリンクとして存在していることがある。Linux Standard Baseでも指定コマンドになっている[9]。
tarと組み合わせる場合には.tar.gzもしくは.tgzとする[10]。
2012年8月に発行された
RFC 6713でapplication/gzipが定義されて、IANAにも正式に登録された。以前はapplication/x-gzipやapplication/x-gzip-compressedなどが用いられていた。[11]
tarによるアーカイブがなされている場合は、非公式のapplication/x-tar-gzも用いられる。[要出典]
gzipは、HTTP通信を高速化するために使用されるもっとも一般的な圧縮アルゴリズムであり、現在ではほとんどのサーバーソフトウェアとブラウザーがgzip圧縮に対応している[12][13]。2024年3月現在、すべてのウェブサイトのうち約50%がgzip圧縮を使用している[14]。
固有名詞の分類