gunzipコマンド

gzipで圧縮されたファイルを展開します。

概要

gunzipはgzip圧縮で圧縮されたファイルを展開するユーティリティです。.gz拡張子を削除して元のファイルを復元します。デフォルトでは、-kオプションを使用しない限り、gunzipは元の圧縮ファイルを保持しません。

オプション

-c, --stdout, --to-stdout

出力を標準出力に書き込み、元のファイルを変更しません。

$ gunzip -c archive.gz > extracted_file

-f, --force

ファイルに複数のリンクがある場合や、対応するファイルがすでに存在する場合でも、強制的に展開します。

$ gunzip -f already_exists.gz

-k, --keep

展開中に入力ファイルを保持します(削除しません)。

$ gunzip -k data.gz
$ ls
data  data.gz

-l, --list

展開せずに圧縮ファイルの内容を一覧表示します。

$ gunzip -l archive.gz
         compressed        uncompressed  ratio uncompressed_name
                 220                 356  38.2% archive

-q, --quiet

すべての警告を抑制します。

$ gunzip -q noisy.gz

-r, --recursive

ディレクトリ内のファイルを再帰的に展開します。

$ gunzip -r ./compressed_directory/

-t, --test

展開せずに圧縮ファイルの整合性をテストします。

$ gunzip -t archive.gz

-v, --verbose

展開された各ファイルの名前と圧縮率を表示します。

$ gunzip -v data.gz
data.gz:	 65.3% -- replaced with data

使用例

基本的な展開

$ gunzip archive.gz
$ ls
archive

複数ファイルの展開

$ gunzip file1.gz file2.gz file3.gz
$ ls
file1 file2 file3

標準出力への展開

$ gunzip -c config.gz | grep "setting"
default_setting=true
advanced_setting=false

展開せずに圧縮ファイルをテスト

$ gunzip -tv *.gz
archive1.gz: OK
archive2.gz: OK
data.gz: OK

ヒント:

tarファイルとの使用

多くのtarアーカイブはgzipで圧縮されています(.tar.gzまたは.tgz拡張子)。最初にgunzipを使用する代わりに、tar -xzfを使用して一度に展開できます。

複数の圧縮形式の処理

圧縮形式が不明な場合は、様々な圧縮形式で動作するzcatの使用を検討するか、zipファイル用のより汎用性の高いunzipを試してみてください。

タイムスタンプの保持

gunzipはデフォルトで元のファイルのタイムスタンプを保持します。これによりファイル履歴情報を維持できます。

パイプの使用

大きなファイルを扱う場合は、-cオプションを使用して中間ファイルを作成せずに出力を別のコマンドに直接パイプすることができます。

よくある質問

Q1. gunzipとgzip -dの違いは何ですか?

A. 機能的に同等です。gunzip file.gzgzip -d file.gzと同じです。

Q2. 元のファイルを削除せずにファイルを展開するにはどうすればよいですか?

A. -kまたは--keepオプションを使用します:gunzip -k file.gz

Q3. gunzipは.zipファイルを処理できますか?

A. いいえ、gunzipはgzip圧縮ファイル(.gz)のみを処理します。.zipファイルの場合は、unzipコマンドを使用してください。

Q4. 複数のファイルを一度に展開するにはどうすればよいですか?

A. すべてのファイルをリストするだけです:gunzip file1.gz file2.gz file3.gzまたはワイルドカードを使用します:gunzip *.gz

Q5. 展開せずに.gzファイルの内容を確認するにはどうすればよいですか?

A. gunzip -l file.gzを使用して内容を一覧表示するか、zcat file.gz | lessを使用して内容を表示します。

参考文献

https://www.gnu.org/software/gzip/manual/gzip.html

改訂履歴