このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
【Linux】ファイルの解凍:gunzipコマンド

gunzipコマンドの概要
「gunzip」コマンドは、「gzip」で圧縮されたファイルを解凍するためのコマンドです。「gzip」で圧縮されたファイルは「.gz」拡張子が付与されており、「gunzip」を使用して元のファイル形式に戻すことができます。「gunzip」は「gzip -d」コマンドと同等の機能を持ちます。

コマンドの主なオプション
| オプション | 説明 |
|---|---|
-c | 解凍した内容を標準出力に出力します。元のファイルはそのまま残ります。 |
-d | ファイルを解凍します。このオプションはデフォルト動作と同じです。 |
-f | 既存のファイルを強制的に上書きします。 |
コマンドの使用例と解説
基本的な使用例
ダミーファイルの作成とgzipコマンドによる圧縮ファイルの作成
「dd」コマンドを使ってダミーファイルを作成します。
「dd」コマンドは、指定したサイズのファイルを作成するために使用できます。以下のコマンドを実行して、1GBのダミーファイルを作成します。
・「dd if=/dev/zero of=dummyfile bs=1M count=1024」コマンドを実行します。
user01@ubuntu-vm:~$ dd if=/dev/zero of=dummyfile bs=1M count=1024
1024+0 レコード入力
1024+0 レコード出力
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 1.48019 s, 725 MB/s「dd if=/dev/zero of=dummyfile1 bs=1M count=1024」コマンドの解説
以下は、「dd if=/dev/zero of=dummyfile1 bs=1M count=1024」コマンドの各部分の意味を表にまとめたものです。
| パラメータ | 意味 |
|---|---|
dd | データのコピーおよび変換を行うコマンド。 |
if=/dev/zero | 入力ファイル(input file)として /dev/zero を指定。/dev/zero は無限のゼロバイトストリームを生成する特殊ファイル。 |
of=dummyfile | 出力ファイル(output file)として dummyfile を指定。このファイルが新たに作成される。 |
bs=1M | ブロックサイズ(block size)を1メガバイト(1M)に設定。各読み取りおよび書き込み操作のサイズを指定。 |
count=1024 | 指定したブロックサイズ(1M)のブロックを1024個処理する。総計で1024メガバイト(1ギガバイト)のファイルを作成する。 |
このコマンドは、「/dev/zero」から 1メガバイト単位で 1,024ブロック(計1ギガバイト)のゼロバイトデータを読み取り、それを「dummyfile」という名前のファイルに書き込むことで、1ギガバイトのダミーファイルを作成しています。
ダミーファイルの確認
作成したダミーファイルを確認します。
・「ls -l」コマンドを実行します。
user01@ubuntu-vm:~$ ls -l
合計 1048616
-rw-rw-r-- 1 user01 user01 1073741824 5月 28 22:45 dummyfile
drwx------ 4 user01 user01 4096 5月 5 14:52 snap
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ダウンロード
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 テンプレート
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 デスクトップ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ドキュメント
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ビデオ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ピクチャ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ミュージック
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 公開ファイルの圧縮
・「gzip dummyfile」コマンドを実行し、「ls -l」で圧縮された「dummyfile.gz」ファイルを確認します。
このコマンドは、「dummyfile」を圧縮して「dummyfile.gz」というファイルを作成します。元の「dummyfile」は削除され、「dummyfile.gz」が生成されます。
user01@ubuntu-vm:~$ gzip dummyfile
user01@ubuntu-vm:~$ ls -l
合計 1049640
-rw-rw-r-- 1 user01 user01 1042079 5月 28 22:45 dummyfile.gz
drwx------ 4 user01 user01 4096 5月 5 14:52 snap
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ダウンロード
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 テンプレート
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 デスクトップ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ドキュメント
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ビデオ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ピクチャ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ミュージック
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 公開1.ファイルの解凍
・「gunzip dummyfile.gz」コマンドを実行し、「ls -l」で解凍された「dummyfile」ファイルを確認します。
このコマンドは、「dummyfile.gz」を解凍して元の「dummyfile」を再現します。元の圧縮ファイル「dummyfile.gz」は削除され、「dummyfile」が生成されます。
user01@ubuntu-vm:~$ gunzip dummyfile.gz
user01@ubuntu-vm:~$ ls -l
合計 1048616
-rw-rw-r-- 1 user01 user01 1073741824 5月 28 22:45 dummyfile
drwx------ 4 user01 user01 4096 5月 5 14:52 snap
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ダウンロード
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 テンプレート
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 デスクトップ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ドキュメント
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ビデオ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ピクチャ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ミュージック
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 公開2.標準出力に解凍結果を出力
まず、「dummyfile」を「gzip」コマンドで圧縮しておきます。
・「gzip dummyfile」コマンドを実行して、圧縮ファイル「dummyfile.gz」を作成します。
標準出力に解凍結果を出力します。
・「gunzip -c dummyfile.gz > dummyfile」コマンドを実行し、「ls -l」コマンドで確認します。
このコマンドは、「dummyfile.gz」を解凍し、その内容を標準出力に出力します。元の「dummyfile.gz」はそのまま残り、解凍結果が「dummyfile」として保存されます。
user01@ubuntu-vm:~$ gunzip -c dummyfile.gz > dummyfile
user01@ubuntu-vm:~$ ls -l
合計 1049636
-rw-rw-r-- 1 user01 user01 1073741824 5月 28 23:23 dummyfile
-rw-rw-r-- 1 user01 user01 1042079 5月 28 22:45 dummyfile.gz
drwx------ 4 user01 user01 4096 5月 5 14:52 snap
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ダウンロード
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 テンプレート
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 デスクトップ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ドキュメント
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ビデオ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ピクチャ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ミュージック
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 公開3.既存のファイルを強制的に上書き
・「gunzip -f dummyfile.gz」コマンドを実行します。
このコマンドは、「dummyfile.gz」を解凍し、既存の「dummyfile」を強制的に上書きします。既に「dummyfile」が存在する場合でも、強制的に上書きされます。
user01@ubuntu-vm:~$ gunzip -f dummyfile.gzその他のオプション
複数ファイルの一括解凍
圧縮ファイルの「dummyfile.gz」と「dummyfile1.gz」を作成します。以下のコマンドを実行します。
- 「
gzip dummyfile」コマンドの実行 - 「
cp dummyfile.gz dummyfile1.gz」コマンドの実行 - 「
ls -l」コマンドの実行
user01@ubuntu-vm:~$ gzip dummyfile
user01@ubuntu-vm:~$ cp dummyfile.gz dummyfile1.gz
user01@ubuntu-vm:~$ ls -l
合計 2076
-rw-rw-r-- 1 user01 user01 1042079 5月 28 22:45 dummyfile.gz
-rw-rw-r-- 1 user01 user01 1042079 5月 28 23:41 dummyfile1.gz
drwx------ 4 user01 user01 4096 5月 5 14:52 snap
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ダウンロード
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 テンプレート
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 デスクトップ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ドキュメント
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ビデオ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ピクチャ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ミュージック
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 公開複数のファイルを一括解凍します。
・「gunzip dummyfile.gz dummyfile1.gz」コマンドを実行し、「ls -l」コマンドで確認します。
このコマンドは、複数の圧縮ファイルを一括で解凍します。
user01@ubuntu-vm:~$ gunzip dummyfile.gz dummyfile1.gz
user01@ubuntu-vm:~$ ls -l
合計 2097196
-rw-rw-r-- 1 user01 user01 1073741824 5月 28 22:45 dummyfile
-rw-rw-r-- 1 user01 user01 1073741824 5月 28 23:41 dummyfile1
drwx------ 4 user01 user01 4096 5月 5 14:52 snap
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ダウンロード
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 テンプレート
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 デスクトップ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ドキュメント
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ビデオ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ピクチャ
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 ミュージック
drwxr-xr-x 2 user01 user01 4096 1月 1 10:51 公開作成したファイルの削除
この演習で作成したファイルを削除します。
・「rm dummyfile dummyfile1」コマンドを実行して、「ls」コマンドで削除されたかを確認します。
user01@ubuntu-vm:~$ rm dummyfile dummyfile1
user01@ubuntu-vm:~$ ls
snap テンプレート ドキュメント ピクチャ 公開
ダウンロード デスクトップ ビデオ ミュージックまとめ
「gunzip」コマンドは、「gzip」で圧縮されたファイルを解凍するための基本的なツールです。主なオプションを理解することで、効率的にファイルの解凍と管理を行うことが可能です。以下の表を参考に、具体的な使用例に合わせて適切なオプションを使用してください。
| オプション | 説明 |
|---|---|
-c | 解凍した内容を標準出力に出力します。元のファイルはそのまま残ります。 |
-d | ファイルを解凍します。このオプションはデフォルト動作と同じです。 |
-f | 既存のファイルを強制的に上書きします。 |
