Unixコマンド/gzip の変更点


*&size(15){''gzip''}; [#ea276610]

[[dokuwiki.fl8.jp>http://dokuwiki.fl8.jp/doku.php/02_freebsd/80_unix%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89/gzip]]
[[dokuwiki.fl8.jp転載済み>http://dokuwiki.fl8.jp/doku.php/02_freebsd/80_unix%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89/gzip]]


**''機能'' [#yd20beef]
gzipコマンドはcompressとともに入力データを圧縮するコマンドです。&br;
gzipコマンドをファイル名を指定せずに実行すると、標準入力からのデータを読み込み&br;
圧縮したデータは標準出力します。&br;
ファイル名を引数として指定すると、指定されたファイルからデータを読み込み、もとのファイル名に&br;
サフィックス(接尾辞)「.gz」を付加したファイルに圧縮したデータを出力します。&br;
圧縮処理が終了すると、元のファイルは削除されます。&br;
gzipコマンドは、GNUのフリーソフトウェアで、圧縮率も一般的にcompressコマンドより高い為、&br;
フリーのPC-UNIXでは広く用いられています。&br;
ただし商用UNIXなどではgzipコマンドが付属していない場合もあるので、他のUNIX環境のユーザーに&br;
圧縮したデータを渡す場合には、相手が復元可能なコマンドで圧縮する必要があります。&br;

**''構文'' [#h5856e39]
gzip [オプション] [ファイル名]

**''オプション'' [#x06d006d]
 -c                  復元(伸長)したデータを標準出力する。
 -d                  圧縮されたファイルを復元する。
 -f                  同名ファイルが存在した場合、警告を表示せずに強制的に上書きする。
 -h                  ヘルプを表示する。
 -l                  圧縮されたファイルの内容を表示する。
 -q                  コマンドのメッセージを抑制する。
 -S .suf             圧縮されたファイルに付与するサフィックス(接尾辞)を「.suf」にする
 -t                  圧縮されたファイルをチェックする。
 -v                  圧縮作業の状態の詳細を表示する
 -n                  圧縮速度を指定する(n=1(圧縮速度優先)〜9(圧縮率優先))

**''コマンド例'' [#ne876292]
▼ファイルを圧縮する。
 $ ls -l sendmail.8.9.3.tar
 -rw-r--r--   1 yamada   user  3768320 Feb 23 21:57 sendmail.8.9.3.tar
                                        sendmail.8.9.3.tarのサイズは3768320バイト
 $ gzip sendmail.8.9.3.tar              sendmail.8.9.3.tarを圧縮し圧縮率を表示する。
 $ ls -l sendmail.8.9.3.tar.gz
 -rw-r--r--   1 yamada   user  1068290 Feb 23 21:57 sendmail.8.9.3.tar
                                        sendmail.8.9.3.tarの圧縮後のサイズは1068290バイト
▼ファイルを圧縮し、内容を表示する
 $ gzip -v sendmail.8.9.3.tar.gz           圧縮ファイルの情報を表示する
 compressed  uncompr. ratio  uncompressed_name
    1068290  3768320  71.6%  sendmail.8.9.3.tar
                                           71.6%圧縮され、元のファイルの30%程度の
                                           サイズになっていることが分かる
▼圧縮速度を指定して圧縮する
 $ gzip -n1 sendmail.8.9.3.tar             圧縮速度を優先して圧縮する。
 sendmail.8.9.3.tar:       65.8% -- replaced with sendmail.8.9.3.tar.gz
                                           圧縮速度を優先すると少し圧縮率が落ちる
▼圧縮ファイルを復元(伸長)する。
 $ ls -l sendmail.8.9.3.tar.gz
 -rw-r--r--   1 yamada   user  1063119 Feb 23 21:57 sendmail.8.9.3.tar.gz
 $ gzip -d sendmail.8.9.3.tar.gz           圧縮されたファイルを復元する
 $ ls -l sendmail.8.9.3.tar
 -rw-r--r--   1 yamada   user  3768320 Feb 23 21:57 sendmail.8.9.3.tar

■/var/log/all.log.0.gz などを標準出力してgrepする
 $ gzip -dc all.log.1.gz |grep -B 3 -A 3 matsui123456@yahoo.co.jp