Ubuntuで「gzip」や「compree」で圧縮されたファイルの中身を、解凍せずに表示することができる「zcat」コマンドについて説明します。
解凍すること無く、圧縮された状態で中身を確認できるためとても便利です。
zcatの使い方
「zcat」の使い方はとても簡単で、下記のように中身を確認したいファイルを指定するだけです。
zcat ファイル
実際に使用してみると、このように圧縮されたファイルの中身を表示してくれます。
$ zcat hello.txt.gz Hello World. This is test text.
「zcat」で解凍もできます
「zcat」は圧縮されたファイルの中身を標準出力に出力するので、「>」(リダイレクト)でファイルに書き出すことでファイルの解凍と同じ結果を得ることができます。
$ zcat hello.txt.gz > Hello.txt $ cat Hello.txt Hello World. This is test text.
「|」(パイプ)で他のコマンドと組み合わせる
「|」(パイプ)を使用して他のコマンドと組み合わせると、より便利に「zcat」を使用することが出来ます。
ここでは、私が普段良く使用している組み合わせを紹介します。
grepと組み合わせる
「grep」コマンドと組み合わせると、圧縮されたファイルの中身を検索することも出来ます。
$ zcat hello.txt.gz | grep World Hello World.
zgrepというコマンドも有ります
「zgrep」というコマンドを使用すると、「zcat hello.txt.gz | grep World」と同じことをより簡単に行うことが出来ます。
簡単な条件で「grep」したいのであればこちらのほうが簡単ですね。
$ zgrep World hello.txt.gz Hello World.
ページャー(lessやmore)と組み合わせる
行数の多いテキストファイルなどを表示する場合、「less」や「more」といったページャーと組み合わせると、中身を確認しやすくなります。
$ zcat man_gzip.txt.gz | more GZIP(1) General Commands Manual GZIP(1) NAME gzip, gunzip, zcat - compress or expand files SYNOPSIS gzip [ -acdfhklLnNrtvV19 ] [-S suffix] [ name ... ] gunzip [ -acfhklLnNrtvV ] [-S suffix] [ name ... ] zcat [ -fhLV ] [ name ... ] --More--
zless zmoreコマンドもあります
「zcat」の結果を「|」で「less」や「more」に渡すのと同じような機能を持つ、「zless」「zlmore」というコマンドもあります。
$ zmore man_gzip.txt.gz GZIP(1) General Commands Manual GZIP(1) NAME gzip, gunzip, zcat - compress or expand files SYNOPSIS gzip [ -acdfhklLnNrtvV19 ] [-S suffix] [ name ... ] gunzip [ -acfhklLnNrtvV ] [-S suffix] [ name ... ] zcat [ -fhLV ] [ name ... ] --More--
コメント