gzip – ファイルを圧縮・展開するコマンド

圧縮・解凍
スポンサーリンク

gzip コマンドは、ファイルを GNU zip 形式(.gz)で圧縮または展開 するためのコマンドです。
主にログファイルやバックアップの圧縮、省スペース化のために利用されます。

構文(Syntax)

gzip [オプション] [FILE...]
gunzip [オプション] [FILE...]
zcat [FILE...]

主なオプション一覧

オプション説明使用例
(なし)指定したファイルを .gz に圧縮し、元ファイルを削除gzip file.txt
-d展開(gunzip と同等)gzip -d file.txt.gz
-k元ファイルを削除せず保持gzip -k file.txt
-c標準出力に出力(パイプ処理向け)gzip -c file.txt > file.txt.gz
-rディレクトリを再帰的に処理gzip -r logs/
-1-9圧縮率を指定(デフォルト: -6、数値が大きいほど高圧縮だが遅い)gzip -9 largefile
-l圧縮ファイルの情報を表示gzip -l file.txt.gz
-v詳細を表示gzip -v file.txt

実行例

ファイルを圧縮

gzip file.txt

出力:

file.txt → file.txt.gz

圧縮しても元ファイルを残す

gzip -k file.txt

file.txtfile.txt.gz が両方残る)

高圧縮率で圧縮

gzip -9 bigfile.iso

複数ファイルをまとめて圧縮

gzip file1.txt file2.txt

ディレクトリ内のファイルを再帰的に圧縮

gzip -r logs/

ファイルを展開

gzip -d file.txt.gz

または:

gunzip file.txt.gz

圧縮ファイルを解凍せずに内容を表示

zcat file.txt.gz

圧縮ファイルの情報を確認

gzip -l file.txt.gz

出力例:

         compressed        uncompressed  ratio uncompressed_name
                123                456   73.0% file.txt

エラー例(存在しないファイルを指定)

gzip missing.txt

出力例:

gzip: missing.txt: No such file or directory

関連コマンド

  • gunzip : .gz ファイルを展開
  • zcat : .gz ファイルを展開せずに内容を表示
  • tar : 複数ファイルをまとめて .tar.gz 形式にする際によく併用
  • bzip2 : .bz2 形式の高圧縮ツール
  • xz : .xz 形式のさらに高圧縮ツール

備考

  • gzip単一ファイルのみ圧縮 するため、複数ファイルをまとめたい場合は tar と組み合わせて .tar.gz とするのが一般的です。
  • デフォルトの圧縮率(-6)は速度と圧縮効率のバランスが良い設定です。
  • テキストファイルは高圧縮率になりますが、JPEG や MP4 など既に圧縮されたファイルは効果が薄いです。

参考

スポンサーリンク
Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント