Linuxのlessコマンドを紹介します。
lessコマンドはファイルの内容を確認するコマンドの1つです。
他にも、tail、more、cat、grepなどありますが、まずは色んなことができるlessコマンドを使えるようになりましょう。
lessコマンドの基本
基本的なlessコマンドの使い方を説明します。
ファイルの中身を確認する
次のコマンドでファイルの中身を確認することができます。
less filename.txt
上記のコマンドでターミナルにファイルの内容が表示されます。
操作方法
lessコマンド起動後に次のコマンドを入力すると簡単な操作ができます。
コマンド | 操作 |
q | lessコマンドを終了する |
/キーワード | 下方向に向かってキーワードを検索する |
?キーワード | 上方向に向かってキーワードを検索する |
Shift + f | 監視モード(*1)にする(ctrl + cで終了) |
gまたは< | ファイルの先頭に移動する |
G(Shift + g)または> | ファイルの末尾に移動する |
矢印キーまたはスクロール | 行単位で移動 |
(*1)監視モード:ファイルの変更などをタイムリーに確認することができる状態。起動中の処理のログファイルを見るときなどによく使用する。
使用例
ケースバイケースの使用例を紹介します。
処理が完了したバッチのログを確認する
例えば、バッチbatch_updateのログファイルbatch_update.logを確認する時は次のような流れになります。
less batch_update.log
上記のコマンドでログファイルの中身を確認します。
この後「/キーワード」または「?キーワード」を使用して探したいログ情報を探します。
そうすると、キーワードに色がついて表示されるので目的の情報を探すことができます。
キーワードを含む行だけ表示する
前例の場合、キーワードを含まない行も表示されているのでテキスト量としては変わりません。
そこで次のようにlessコマンド実行時にgrepコマンドを併用することで、キーワード「warning」を含む文字列のみ表示することができます。
less batch_update.log | grep warning
ログ出力のルールがわかっているのであれば、必要な部分のみ情報を切り出します。
キーワードを含む行とその前後のみ切り出して表示する
例えばバッチログを確認する場合は、「〇〇バッチ起動しました」の次の行に実行結果などが書かれていることもあります。
これはログ出力のルールがどのようになっているか確認する必要がありますが、わからない場合でも、まずキーワードの周辺を確認したい場合などに有効です。
less batch_update.log | grep -3 warning
このコマンドを実行すると、キーワード「warning」を含む行とその前後3行が切り出されて表示されます。
もちろん数字を変えれば好きな行数を表示することができます。
キーワードを含む行とその前3行を切り出す場合はgrepコマンドにBオプションを付けます。
less batch_update.log | grep -B 3 warning
キーワードを含む行とその後3行を切り出す場合はgrepコマンドにAオプションを付けます。
less batch_update.log | grep -A 3 warning