カテゴリ: Linux 更新日: 2026/03/23

gzipコマンドの使い方を完全ガイド!初心者でもわかるLinuxの圧縮と解凍の基本

Linuxのgzipコマンドとは?圧縮と解凍の基本
Linuxのgzipコマンドとは?圧縮と解凍の基本

先生と生徒の会話形式で理解しよう

生徒

「Linuxでファイルを圧縮したいんですけど、どうすればいいですか?」

先生

「Linuxではgzipコマンドを使うことで、ファイルを簡単に圧縮できますよ。」

生徒

「圧縮って何ですか?それって難しくないですか?」

先生

「圧縮というのは、ファイルのサイズを小さくすることです。写真や動画を保存するときにスペースを節約できるんですよ。操作も簡単なので一緒に学びましょう。」

1. gzipコマンドとは?

1. gzipコマンドとは?
1. gzipコマンドとは?

gzipコマンドは、Linuxでファイルを圧縮したり解凍したりするための基本的なコマンドです。圧縮とは、ファイルのサイズを小さくすることで、ディスク容量を節約したり、ネットワーク経由でファイルを早く送ったりできる便利な機能です。

たとえば、大きなテキストファイルやログファイルを圧縮すると、元のサイズの数分の一になることもあります。これは、衣類を圧縮袋に入れて収納スペースを節約するのと似ています。gzipで圧縮されたファイルには、通常.gzという拡張子が付きます。

Windowsの「ZIP圧縮」と似ていますが、gzipはLinuxやUNIX系のシステムで非常によく使われており、Webサーバーでデータを圧縮して送信する場合などにも活用されています。

2. gzipコマンドの基本的な使い方

2. gzipコマンドの基本的な使い方
2. gzipコマンドの基本的な使い方

gzipコマンドの基本的な書き方は、以下のようになります。


gzip [オプション] ファイル名

最もシンプルな使い方は、圧縮したいファイル名を指定するだけです。たとえば、sample.txtというファイルを圧縮する場合は、次のようにします。


gzip sample.txt
ls
sample.txt.gz

このコマンドを実行すると、元のsample.txtファイルは削除され、代わりにsample.txt.gzという圧縮ファイルが作成されます。これがgzipの重要な特徴で、元のファイルは自動的に圧縮ファイルに置き換わるのです。

ここで「オプション」とは、コマンドの動作をカスタマイズするための追加の指示のことです。たとえば、圧縮レベルを変えたり、元のファイルを残したりすることができます。

3. ファイルを圧縮する方法

3. ファイルを圧縮する方法
3. ファイルを圧縮する方法

ファイルを圧縮する際には、いくつかの便利なオプションがあります。最も基本的な圧縮方法はすでに説明しましたが、ここではより実用的な使い方を見ていきましょう。

元のファイルを残して圧縮するには、-kオプション(keepの略)を使います。これにより、元のファイルが削除されずに残ります。


gzip -k document.txt
ls
document.txt  document.txt.gz

このように、-kオプションを使うと、元のdocument.txtと圧縮されたdocument.txt.gzの両方が保存されます。大事なファイルを圧縮する際には、このオプションを使うと安心です。

また、圧縮レベルを指定することもできます。gzipでは、-1から-9までの数字で圧縮レベルを指定できます。-1は最も速いが圧縮率は低く、-9は最も圧縮率が高いが時間がかかります。デフォルトは-6です。


gzip -9 largefile.log
ls -lh
-rw-r--r-- 1 user user 1.2M Jan  9 10:00 largefile.log.gz

大きなログファイルなどを最大限に圧縮したい場合は、-9オプションが効果的です。ただし、通常の用途では標準の圧縮レベルで十分なことが多いです。

4. ファイルを解凍する方法

4. ファイルを解凍する方法
4. ファイルを解凍する方法

圧縮したファイルを元に戻すことを「解凍」または「展開」といいます。gzipで圧縮したファイルを解凍するには、-dオプション(decompressの略)を使います。


gzip -d sample.txt.gz
ls
sample.txt

このコマンドを実行すると、sample.txt.gzが解凍されて元のsample.txtに戻ります。圧縮のときと同じように、圧縮ファイルは削除されて元のファイルだけが残ります

また、gunzipというコマンドも使えます。これはgzip -dと全く同じ動作をする別名のコマンドです。


gunzip document.txt.gz
ls
document.txt

gunzipは「GNU unzip」の略で、gzip -dと同じですが、こちらの方が直感的でわかりやすいという人もいます。どちらを使っても結果は同じなので、お好みで選んでください。

5. 複数のファイルをまとめて圧縮する

5. 複数のファイルをまとめて圧縮する
5. 複数のファイルをまとめて圧縮する

gzipコマンドは、複数のファイルを一度に圧縮することもできます。ただし、重要な点として、gzip各ファイルを個別に圧縮するということを覚えておきましょう。


gzip file1.txt file2.txt file3.txt
ls
file1.txt.gz  file2.txt.gz  file3.txt.gz

このように、三つのファイルを指定すると、それぞれが個別に圧縮されて三つの.gzファイルが作成されます。これは、Windowsの「ZIP圧縮」のように複数のファイルを一つのアーカイブにまとめるのとは異なります。

もし複数のファイルを一つのアーカイブにまとめて圧縮したい場合は、tarコマンドとgzipを組み合わせて使います。この組み合わせは非常によく使われており、.tar.gz.tgzという拡張子のファイルを見たことがあるかもしれません。これについては、後ほど説明します。

6. 圧縮率の確認と詳細表示

6. 圧縮率の確認と詳細表示
6. 圧縮率の確認と詳細表示

ファイルがどれくらい圧縮されたかを確認したい場合は、-vオプション(verboseの略)を使います。これにより、圧縮の詳細情報が表示されます。


gzip -v report.txt
report.txt:	 65.2% -- replaced with report.txt.gz

この出力では、ファイルが約65パーセント圧縮されたことがわかります。つまり、元のファイルサイズの約35パーセントになったということです。テキストファイルやログファイルは特に圧縮率が高くなる傾向があります。

また、-lオプション(listの略)を使うと、圧縮ファイルの情報を解凍せずに確認できます。


gzip -l report.txt.gz
         compressed        uncompressed  ratio uncompressed_name
               1024                2945  65.2% report.txt

これにより、圧縮後のサイズ、元のサイズ、圧縮率、元のファイル名などの情報が一覧表示されます。大きなファイルを扱う際に、解凍する前にサイズを確認したいときに便利です。

7. tarコマンドとの組み合わせ

7. tarコマンドとの組み合わせ
7. tarコマンドとの組み合わせ

gzipは単独でも便利ですが、tarコマンドと組み合わせることで、さらに強力なアーカイブツールになります。tarは複数のファイルやディレクトリを一つのファイルにまとめるコマンドで、gzipと組み合わせることで「まとめて圧縮」ができます。


tar -czf archive.tar.gz folder/
ls
archive.tar.gz  folder/

このコマンドでは、tar-cオプションでアーカイブを作成し、-zオプションでgzip圧縮を行い、-fオプションでファイル名を指定しています。これにより、folderディレクトリ全体が一つの圧縮ファイルにまとめられます。

解凍する場合は、次のようにします。


tar -xzf archive.tar.gz
ls
archive.tar.gz  folder/

ここで-xは展開(extract)を意味します。この組み合わせは、Linuxでファイルを配布したりバックアップを作成したりする際の標準的な方法となっています。

8. gzipと他の圧縮コマンドとの違い

8. gzipと他の圧縮コマンドとの違い
8. gzipと他の圧縮コマンドとの違い

Linux にはgzip以外にも、いくつかの圧縮コマンドがあります。それぞれに特徴があるので、用途に応じて使い分けることが大切です。

bzip2コマンドは、gzipよりも高い圧縮率を実現できますが、圧縮と解凍に時間がかかります。拡張子は.bz2です。ディスク容量を最大限に節約したい場合に適していますが、速度を重視する場合はgzipの方が優れています。

xzコマンドは、比較的新しい圧縮形式で、bzip2よりもさらに高い圧縮率を実現できます。拡張子は.xzです。最近のLinuxディストリビューションでは、ソフトウェアパッケージの配布に.tar.xz形式がよく使われています。

zipコマンドは、Windowsとの互換性が高い圧縮形式です。拡張子は.zipで、複数のファイルを一つのアーカイブにまとめることができます。異なるOS間でファイルを共有する場合は、zipが便利です。

一般的に、Linuxのシステム管理やログファイルの圧縮にはgzipが最もよく使われます。速度と圧縮率のバランスが良く、ほとんどのLinuxシステムに標準でインストールされているからです。

9. gzipの便利なオプション一覧

9. gzipの便利なオプション一覧
9. gzipの便利なオプション一覧

ここまで説明してきたオプション以外にも、gzipにはいくつかの便利なオプションがあります。実際の作業で役立つものをまとめて紹介します。

-rオプション(recursiveの略)を使うと、ディレクトリ内のファイルを再帰的に圧縮できます。ただし、各ファイルは個別に圧縮されます。


gzip -r mydir/
ls mydir/
file1.txt.gz  file2.txt.gz  file3.txt.gz

-tオプション(testの略)を使うと、圧縮ファイルが壊れていないかテストできます。これは、ダウンロードしたファイルや長期保存していたファイルの整合性を確認する際に便利です。


gzip -t backup.tar.gz
(エラーがなければ何も表示されません)

-fオプション(forceの略)を使うと、すでに圧縮ファイルが存在する場合でも強制的に上書きします。通常は確認を求められますが、このオプションを使うとスクリプトなどで自動化する際に便利です。

-cオプションを使うと、圧縮結果を標準出力に出力します。これにより、元のファイルを保持したまま、圧縮データをパイプで別のコマンドに渡すことができます。上級者向けの使い方ですが、覚えておくと便利です。

10. 実践的な使用例

10. 実践的な使用例
10. 実践的な使用例

最後に、実際の業務やシステム管理でよく使われるgzipの使用例を紹介します。これらの例を参考にすれば、日常的な作業でgzipを効果的に活用できるでしょう。

ログファイルのアーカイブでは、古いログファイルを圧縮して保存することで、ディスク容量を大幅に節約できます。


gzip -9 /var/log/old_access.log
ls -lh /var/log/
-rw-r--r-- 1 root root 125K Jan  9 10:00 old_access.log.gz

この例では、数メガバイトあったログファイルが数百キロバイトに圧縮され、ストレージの効率的な利用が可能になります。

バックアップの作成では、tarと組み合わせてディレクトリ全体をバックアップします。


tar -czf backup_2026-01-09.tar.gz /home/user/documents/
ls -lh
-rw-r--r-- 1 user user 45M Jan  9 10:00 backup_2026-01-09.tar.gz

このように日付をファイル名に含めることで、複数のバックアップを管理しやすくなります。定期的なバックアップ作業をシェルスクリプトで自動化することもできます。

ファイル転送前の圧縮では、大きなファイルをネットワーク経由で送信する前に圧縮することで、転送時間を大幅に短縮できます。


gzip -k presentation.pdf
ls -lh
-rw-r--r-- 1 user user 15M Jan  9 10:00 presentation.pdf
-rw-r--r-- 1 user user 12M Jan  9 10:00 presentation.pdf.gz

この例では、-kオプションで元のファイルを残しながら圧縮版を作成しています。受信者はgunzipで解凍すれば、元のPDFファイルを取得できます。

カテゴリの一覧へ
新着記事
New1
WAF(ファイアウォール)
AWS WAFログの有効化とログ解析の基本をわかりやすく解説
New2
圧縮・解凍・アーカイブ
gzipコマンドの使い方を完全ガイド!初心者でもわかるLinuxの圧縮と解凍の基本
New3
AWS のコスト管理
AWSのタグ付けでコスト管理を完全理解!初心者でもできるAWSコスト配分の基本と実践
New4
AWS Lambda
AWS Lambdaのトリガーとは?API GatewayやS3との連携方法
人気記事
No.1
Java&Spring記事人気No1
S3(オブジェクトストレージ)
AWS S3の料金体系をわかりやすく解説
No.2
Java&Spring記事人気No2
S3(オブジェクトストレージ)
AWS S3のデータ保護(オブジェクトロック・WORM設定)を初心者向けにやさしく解説
No.3
Java&Spring記事人気No3
RDS(データベース)
AWS RDSのスナップショットを手動で作成・復元する方法を初心者向けにやさしく解説!
No.4
Java&Spring記事人気No4
AWS 基本
AWSの公式料金計算ツール(Pricing Calculator)の使い方
No.5
Java&Spring記事人気No5
ELB(ロードバランサー)
AWS ELBでターゲットグループを設定する方法を初心者向けに解説!
No.6
Java&Spring記事人気No6
RDS(データベース)
AWS RDSのスケーリング(インスタンスサイズ変更)を初心者向けにやさしく解説!
No.7
Java&Spring記事人気No7
Direct Connect(専用線接続)
AWS Direct Connectの接続タイプ(Dedicated・Hosted)を初心者向けにやさしく解説
No.8
Java&Spring記事人気No8
VPC(プライベートクラウド)
AWS VPCフローログの有効化とログの確認方法を初心者向けにわかりやすく解説!