less コマンドの使い方|ページ送り・検索・行番号表示を解説

コマンドリファレンス

less コマンドは、テキストファイルの中身をページ単位(画面単位)でスクロールしながら閲覧するためのコマンドです。
cat のようにファイル全体を一気に出力せず、必要な部分だけを表示できるため、大きなログファイルや設定ファイルを探しながら読むときに便利です。ファイルを読み込みながら表示するため、巨大なファイルでも起動が速いのも特徴です。

構文(Syntax)

less [オプション] ファイル名

コマンドの出力をパイプでそのまま渡すこともできます。

ps aux | less

less コマンドの基本操作(キー操作一覧)

less でファイルを開いた後は、キーボード操作で画面を移動します。よく使う操作は次のとおりです。

キー動作
スペース / f1画面分、下にスクロール
b1画面分、上にスクロール
/ j1行下にスクロール
/ k1行上にスクロール
gファイルの先頭に移動
Gファイルの末尾に移動
/文字列下方向へ文字列を検索
?文字列上方向へ文字列を検索
n次の検索結果に移動
N前の検索結果に移動
qless を終了する

主なオプション一覧

オプション説明使用例
-N行番号を表示するless -N /var/log/syslog
-S行を折り返さずに表示less -S longfile.txt
-i検索時に大文字小文字を区別しないless -i text.txt
-M画面下に行数・位置(%)などの詳細情報を表示less -M access.log
-RANSIカラーコードをそのまま表示(grep --color の出力確認などに便利)grep --color=always ERROR app.log | less -R
+Fファイルの末尾をリアルタイム表示(tail -f 相当)less +F /var/log/syslog
-p PATTERN起動時にPATTERNを検索して表示less -p ERROR logfile.txt

実行例

ファイルをページ単位で閲覧

less /etc/passwd

→ 矢印キーやスペースでスクロールできる。

行番号を表示して閲覧する

less -N /etc/hosts

→ 各行の先頭に行番号が表示される。設定ファイルの何行目にエラーがあるかを伝えたいときなどに便利。ファイルを開いた後に -N オプションを付けずに行番号表示を切り替えたい場合は、less 起動中に -N と入力すれば表示・非表示を切り替えられる。

ファイル内を検索する

less /var/log/syslog

→ 起動後に /ERROR と入力してEnterを押すと、「ERROR」を含む行を下方向へ検索する。n で次の一致箇所、N で前の一致箇所に移動できる。上方向へ検索したい場合は ?ERROR のように ? を使う。

ファイルの末尾にジャンプする

less /var/log/syslog

→ 起動後に G を押すとファイルの末尾に移動する。先頭に戻るときは g を押す。最新のログを確認しつつ更新も追いたい場合は、末尾で F を押すと tail -f と同様のリアルタイム表示に切り替わる(Ctrl+Cで解除)。

長い行を折り返さずに表示

less -S longfile.txt

→ 横スクロールが可能になる。CSVのように1行が長いファイルを確認するときに見やすい。

sudoなしで権限がないファイルを開こうとする(エラー例)

less /var/log/auth.log

→ 権限がない場合「Permission denied」と表示される。
sudo less /var/log/auth.log で閲覧可能)

less コマンドを終了する方法

less はファイルを開いたままキー入力を待ち続けるため、初めて使うと終了方法に迷いがちです。閲覧を終えるには q キーを押します。

less /var/log/syslog
# 閲覧が終わったら
q

q を押すと元のシェルのプロンプトに戻る。+F オプションや起動中に F でリアルタイム表示にしている場合は、先に Ctrl+C でリアルタイム表示を止めてから q で終了する。

cat・more との違い

コマンド特徴向いている場面
lessページ単位で表示、前後に自由にスクロール・検索できる大きなファイルを探しながら読む
moreless の簡易版。下方向へのスクロールのみで、上に戻れない環境が多いごく簡単な確認
catファイル全体を一気に標準出力へ表示する短いファイルの確認や他コマンドへの連結

関連コマンド

  • more : less の簡易版で、下方向へのスクロールが主。
  • cat : ファイル全体を一気に表示。
  • tail : ファイルの末尾を表示、-fで追跡も可能。
  • head : ファイルの先頭部分を表示。
  • grep : ファイルやログから特定の文字列を含む行を検索。

備考

  • less はGNU版・BSD版で基本操作は共通ですが、細かいオプションが異なることがあります。
  • 権限が必要なファイルは sudo less ファイル名 とする必要があります。
  • less を使えば /etc/group/etc/passwd などの設定ファイルを安全に参照でき、直接エディタで開いてしまうリスクを避けられます。

参考

Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント