やりたいこと
ディスク容量削減のため、ログはgz形式で圧縮されている。
gz形式で圧縮されたログをそのまま解凍せず、シンプルに中身を確認したい。
環境
OS:FreeBSD 9.1
手順
以下のコマンドでgz圧縮されたログを開く。
gunzip -c {gz形式のファイル} | less
表示例
example.com 1.11.0.11 - - [10/Oct/2019:23:59:40 +0900] "GET hogehoge.jpg HTTP/1.1" 200 5679 "https://example.com/foo.html" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_1_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.1 Mobile/15E14 8 Safari/604.1" example.com 1.23.4.56 - - [10/Oct/2019:23:59:40 +0900] "GET hogehoge.jpg HTTP/1.1" 200 5679 "https://example.com/foo.html" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_1_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.1 Mobile/15E14 8 Safari/604.1"
コマンド説明
gunzip
gz形式で圧縮されたファイルを解凍するコマンドがgunzip。
指定されたファイルは解凍後のファイルに置き換わるので、ディスク容量に注意。
-c
解凍したファイルの中身を画面に標準出力する。
このオプションが付いた場合、圧縮されていたgz形式のファイルは解凍後のファイルに置き換わらなくなる。
less
ファイルや出力結果を、まるでエディタで見るように確認できるコマンド。
非常に多機能で、検索、grep、ファイルの更新監視等ができる。
/ + 文字列
/を入力してから文字列を入れると検索ができる。
n を入力するとマッチした次の文字列に、Nで前の文字列に飛ぶ。
gとG
Gで末尾に、gで先頭に飛ぶ。
ログファイルの追記部分を見てから、その他の履歴を見たいときに重宝する。
F
大文字のFを入力すると、ファイルの更新を監視して、追記を表示するようになる。
tail -F と同等の機能なので、わざわざgrepやtailのコマンドを打ち直さなくて良くなり、非常に楽ができる。
抜けるときはCtrl + c を入力する。
& + 文字列
文字列でgrepできる。
特定のバッチやエラーメッセージ、urlなどを絞り込むときに使用する。
grep状態を抜けるときは、再度 & を入力し、文字列を入れずにEnterを押す。