Linux での gzip コマンドの使い方

Suraj Joshi 2023年1月30日
  1. gzip の構文
  2. gzip を用いてファイルを圧縮する
  3. gzip を用いたファイルの展開
  4. gzip コマンドを用いた圧縮ファイルの詳細一覧
Linux での gzip コマンドの使い方

gzip はコマンドラインユーティリティであり、.gz 形式のアーカイブを作成したり展開したりすることができます。gzip コマンドはファイルごとに圧縮ファイルを作成します。複数のファイルやディレクトリを一つの圧縮ファイルに圧縮したい場合は、tar コマンドを使って .tar アーカイブを作成し、gzip コマンドを使って .tar アーカイブを圧縮する必要があります。オーディオファイルや画像ファイルなどのバイナリファイルは既に圧縮されているので、gzip コマンドを使って圧縮することは推奨されていません。

gzip の構文

gzip [OPTION]... [FILE]...

[FILE]... は圧縮するファイルを表し、[OPTION]... は圧縮や伸長処理をカスタマイズするためのオプションを表します。

gzip を用いてファイルを圧縮する

gzip を使ってファイルを圧縮するコマンドは以下の通りです。

gzip filename

これは gzip を用いて filenamefilename.gzip に圧縮し、元のファイルを削除します。

元のファイルを残したい場合は、コマンドと一緒に -k オプションを使用します。

gzip -k main.py

これはファイル main.pymain.py.gz に圧縮し、元のファイルを保持します。

これは gzip コマンドが標準出力に出力を書き込むように指示するもので、標準出力を .gzip ファイルにリダイレクトします。

gzip -c main.py > main.py.gz

また、元のファイルを保持したまま main.py ファイルを main.py.gz に圧縮します。

冗長な出力を得るには、-v オプションを使用します。

gzip -v main.py

出力:

main.py:         18.6% -- replaced with main.py.gz

出力から、圧縮中のファイルサイズの減少率を見ることができます。

gzip を用いて複数のファイルを一度に圧縮する

gzip を用いて複数のファイルを一度に圧縮するには、gzip コマンドを用います。

gzip main.py file.py process.py

これにより、main.pyfile.pyprocess.pymain.py.gzfile.py.gzprocess.py.gz としてそれぞれの .gz ファイルに圧縮されます。

gzip を用いてディレクトリ内のすべてのファイルを圧縮する

gzip を用いてディレクトリ内のすべてのファイルを圧縮するには、gzip コマンドの -r オプションを用います。

gzip -r test_dir

これは test_dir 内の個々のファイルを .gz で終わるそれぞれの圧縮ファイルに圧縮します。

gzip を用いたファイルの展開

gzip を用いて .gz ファイルを展開するには、gzip コマンドの -d オプションを用います。

gzip -d filename.gz

これにより、gzip を用いて filename.gzfilename に展開し、圧縮ファイルを削除します。

また、gunzip コマンドを用いて .gz ファイルを展開することもできます。

gunzip main.py.gz

これは gzip を使って main.py.gzmain.py に展開し、圧縮ファイル main.py.gz を削除します。

解凍中に圧縮ファイルを保持したい場合は、コマンドと一緒に -k オプションを使用します。

gzip -dk main.py.gz

これにより、ファイル main.py.gzmain.py に展開し、展開したファイルを保持したまま main.py に展開します。

gzip を用いて複数のファイルを一度に展開する

gzip を用いて複数のファイルを一度に圧縮するには、gzip コマンドに -d オプションを付けて、展開したいファイル名をスペースで区切って指定します。

gzip -d main.py.gz file.py.gz process.py.gz

これにより、main.py.gzfile.py.gzprocess.py.gz の各ファイルが main.pyfile.pyprocess.py として展開されます。

gzip を用いてディレクトリ内のすべてのファイルを展開する

gzip を使ってディレクトリ内のすべてのファイルを展開するには、gzip コマンドの -d オプションと一緒に -r オプションを使用します。

gzip -dr test_dir

これにより、test_dir 内の個々の圧縮ファイルをそれぞれの解凍ファイルに展開することができます。

gzip コマンドを用いた圧縮ファイルの詳細一覧

gzip コマンドは、-l オプションを使って圧縮ファイルの詳細を取得するためにも使うことができます。

gzip -l main.py.gz

出力:

         compressed        uncompressed  ratio uncompressed_name
                 28                   0   0.0% main.py
                 

main.py.gz ファイルの詳細をすべて表示します。

より詳細な情報を取得するには、-v オプションを追加します。

gzip -l main.py.gz

出力:

method  crc     date  time           compressed        uncompressed  ratio uncompressed_name
defla 00000000 Sep  8 22:15                  28                   0   0.0% main.py
著者: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn