Linux の less コマンド:ファイルのページング

LinuxLinuxBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

このチュートリアルでは、Linux で less コマンドを使用して、大きなログ ファイルを効率的にナビゲートして分析する方法を学びます。less コマンドは、端末でテキスト ファイルを表示するための強力なツールであり、ユーザーがコンテンツをスクロールして、特定の情報を検索し、ファイルのコンテンツをページごとに表示できます。

システム管理者として、一連のサーバー エラーを調査する任務があると想像してみてください。システム イベントに関する情報が含まれる大きなログ ファイルにアクセスできますが、通常のテキスト エディタで開くにはファイルが大きすぎます。ここで less コマンドが非常に役立つ場所です。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/TextProcessingGroup(["Text Processing"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux/BasicFileOperationsGroup -.-> linux/less("File Paging") linux/TextProcessingGroup -.-> linux/grep("Pattern Searching") subgraph Lab Skills linux/less -.-> lab-214301{{"Linux の less コマンド:ファイルのページング"}} linux/grep -.-> lab-214301{{"Linux の less コマンド:ファイルのページング"}} end

ログ ファイルへのアクセス

まず、ログ ファイルが格納されているディレクトリに移動して、その内容を表示しましょう。

  1. 端末を開きます。デフォルトでは /home/labex/project ディレクトリにいるはずです。
  2. ディレクトリの内容を一覧表示します。
ls

server_log.txt という名前のファイルが表示されるはずです。3. less コマンドを使用してこのファイルの内容を表示するには、次のように入力します。

less server_log.txt

このコマンドは less を使用して server_log.txt ファイルを開きます。これで、ファイルの内容を表示できます。

注: 表示される内容は、ログ ファイルが動的に生成されるため、以下の例と異なる場合があります。

2023-11-05 08:00:01 INFO: Server startup complete
2023-11-05 08:15:23 WARNING: High CPU usage detected
2023-11-05 08:30:45 ERROR: Database connection failed
2023-11-05 08:31:02 INFO: Retrying database connection
2023-11-05 08:31:05 INFO: Database connection established
...

less ビューを終了するには、q キーを押します。

ファイル内を移動する

ファイルを開いたので、その中をどのように移動するか学びましょう。

  1. less を使ってログ ファイルを再度開きます。
less server_log.txt
  1. 次のキーを使って移動します。
    • Space キーまたは Page Down キーを押して1ページ分前に移動します。
    • b キーまたは Page Up キーを押して1ページ分後ろに移動します。
    • Up キーと Down キーを使って1行ずつ移動します。
    • G キー(Shift + g)を押してファイルの末尾に移動します。
    • g キーを押してファイルの先頭に移動します。

これらの移動コマンドを試して、ファイル内を移動する方法を慣れてください。

  1. 探索が終わったら、q キーを押して less を終了します。

特定のコンテンツを検索する

システム管理者として、特定の情報を迅速に見つける必要が頻繁にあります。less コマンドは強力な検索機能を備えています。

  1. ログ ファイルを再度開きます。
less server_log.txt
  1. "ERROR" という単語を検索するには、/ERROR と入力して Enter キーを押します。これにより、ファイル内の "ERROR" のすべての出現箇所が強調表示されます。
  2. n キーを押して "ERROR" の次の出現箇所に移動し、または N キーを押して前の出現箇所に移動します。
  3. 次に、特定の日付を検索しましょう。今日が2021年9月1日なので、昨日の日付である "2021-08-31" を検索できます。/2021-08-31 と入力して Enter キーを押します。
  4. n キーと N キーを使って、この日付の出現箇所間を移動します。
  5. 検索が終わったら、q キーを押して less を終了します。

行番号の表示

ログを分析する際には、参照のために行番号を表示すると便利です。

  1. 行番号を表示してログ ファイルを開きます。
less -N server_log.txt

-N オプションは less に行番号を表示するように指示します。

  1. 各行の左側に行番号が表示されるはずです。
     1 2023-11-05 08:00:01 INFO: Server startup complete
     2 2023-11-05 08:15:23 WARNING: High CPU usage detected
     3 2023-11-05 08:30:45 ERROR: Database connection failed
     4 2023-11-05 08:31:02 INFO: Retrying database connection
     5 2023-11-05 08:31:05 INFO: Database connection established
...
  1. 以前と同じようにファイル内を移動します。行番号がどのようにファイル内の位置を把握するのに役立つかをご注意ください。

  2. 終了したら、q キーを押して less を終了します。

特定のパターンから開始する

時には、ファイルを特定の箇所から見始めたい場合があります。less コマンドを使えば簡単にできます。

  1. データベース エラーの最初の出現箇所からファイルを見始めたいとしましょう。このコマンドを使います。
less +/ERROR:.*Database server_log.txt

このコマンドは less に対して、ファイルを開き、「ERROR:」の後に「Database」が続く最初の行にすぐにジャンプするように指示します。

  1. これで、最初のデータベース エラーの箇所でファイルが開かれているはずです。
2023-11-05 08:30:45 ERROR: Database connection failed
2023-11-05 08:31:02 INFO: Retrying database connection
2023-11-05 08:31:05 INFO: Database connection established
...
  1. このポイントから以前と同じようにファイル内を移動できます。

  2. 終了したら、q キーを押して less を終了します。

まとめ

このチュートリアルでは、less コマンドを使って大きなログ ファイルを効率的に移動して分析する方法を学びました。ファイルの開き方、コンテンツのスクロール、特定の情報の検索、行番号の表示、およびファイル内の特定のパターンからの開始方法を練習しました。

これらのスキルは、問題のトラブルシューティングやシステム パフォーマンスの監視のために頻繁に大きなログ ファイルを迅速に分析する必要があるシステム管理者や開発者にとって重要です。

このチュートリアルでは扱わなかった他の便利な less パラメータには、以下が挙げられます。

  • -i: 検索時に大文字小文字を区別しない
  • -F: ファイル全体を1画面に表示できる場合は終了する
  • -S: 長い行を改行せずに切り捨てる
  • +F: ファイルを読み続け、新しいコンテンツが表示されるたびに表示する(tail -f と同様)