Linuxのmoreとlessコマンドの違いを徹底解説!長いテキストも怖くない基本操作
生徒
「Linuxで設定ファイルの中身を見ようとしたら、画面がバーーッと流れてしまって一番上が見えなくなっちゃいました…。」
先生
「それは『ページャー』というコマンドを使っていないからですね。Linuxには『more』や『less』という便利な道具があるんですよ。」
生徒
「もあ?れす?なんだか似たような名前ですね。どっちを使えばいいんでしょうか?」
先生
「基本的には似ていますが、機能に違いがあります。パソコンを触ったことがない人でもわかるように、それぞれの使い方と違いを順番に解説しますね。」
1. ページャー(Pager)ってなに?
Linux(リナックス)を使っていると、画面に表示しきれないほど長い文章や、何百行もある設定ファイルを読み取らなければならない場面がよくあります。普通にファイルを表示するcat(キャット)コマンドなどを使うと、映画のスタッフロールのように文字が高速で流れてしまい、最初のほうが読めなくなってしまいます。
そこで登場するのが「ページャー」と呼ばれる種類のコマンドです。これは、長い文章を「1画面ずつ区切って表示してくれるツール」のことです。本のページをめくるように、自分のペースで読み進めることができるので、ネットワークの設定確認やログファイル(コンピュータの活動記録)のチェックには欠かせません。
Linuxで代表的なページャーが、今回ご紹介するmore(モア)とless(レス)です。初心者の方は、まずはこの2つの名前を覚えておきましょう。
2. moreコマンドの基本と使い方
moreコマンドは、古い時代のLinuxから使われている伝統的なページャーです。名前の由来は、画面の最後に「--More--(もっと読む)」と表示されることからきています。
使い方はとても簡単です。ターミナル(文字を入力する黒い画面)で、以下のように入力します。ここでは「sample.txt」という名前のファイルの中身を見てみましょう。
more sample.txt
これは1行目です。
これは2行目です。
(中略)
--More--(25%)
画面の下に「--More--(25%)」と出ているのがわかりますね?これは「まだ全体の25%しか表示していませんよ、続きがありますよ」という意味です。ここで「スペースキー」を押すと次のページへ、「Enterキー」を押すと1行ずつ下にスクロールします。読み終わってファイルの最後まで行くと、自動的にコマンドが終了して元の画面に戻ります。
3. lessコマンドの基本と使い方
lessコマンドは、moreをさらに進化させた強力なページャーです。ITの世界では「Less is More(レスはモアよりも多機能である)」というジョークがあるほど、今ではこちらのほうがよく使われています。
基本的な使い方はmoreと同じですが、最大の違いは「上に自由に戻れること」です。moreは基本的に下(先)へ進むことしかできませんが、lessはマウスのホイールや矢印キーを使って、読んだところを何度でも読み返せます。
less network_settings.conf
# ネットワーク設定ファイル
IPADDR=192.168.1.10
NETMASK=255.255.255.0
:
lessを実行すると、画面の左下に「:(コロン)」が表示されます。これが「あなたの命令を待っています」という合図です。lessは自動で終わらないので、読み終わったらキーボードの「q」(quitの略)を押して終了させる必要があります。これは初心者が最初につまずくポイントなので、しっかり覚えておきましょう。
4. moreとlessの決定的な違いを比較
「結局どっちを使えばいいの?」と迷うかもしれません。現在では、特別な理由がない限りはlessコマンドを使うのが一般的です。その理由を比較表で見てみましょう。
| 機能 | more | less |
|---|---|---|
| スクロール | 基本は下方向のみ | 上下に自由自在 |
| 読み込み速度 | ファイル全体を読み込む | 表示する分だけ読み込む(速い!) |
| 検索機能 | 弱い(少しできる程度) | 強力(単語を探しやすい) |
| 終了のしかた | 末尾まで行くと自動終了 | 「q」を押して手動で終了 |
特に「読み込み速度」に注目してください。lessは、10GB(ギガバイト)もあるような超巨大なログファイルでも、全部を読み込まずに「今見せる場所」だけをサッと表示するため、コンピュータに負担をかけず非常に高速です。
5. ネットワーク通信の確認でよく使う「パイプ」との組み合わせ
lessやmoreは、単体でファイルを読むだけでなく、他のコマンドの結果を受け取るときに真価を発揮します。これを「パイプ」と呼び、記号「|」を使います。
たとえば、システムにどんなネットワーク設定があるか確認するip addrというコマンドがありますが、これの結果が長い場合にlessへ渡すと非常に読みやすくなります。
ip addr | less
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
:
このように、コマンド | lessと書くことで、どんな複雑な出力結果も自分のペースでじっくり確認できるようになります。これはLinuxのトラブルシューティング(不具合解決)で最もよく使うテクニックの一つです。
6. 管理者権限(root)で重要なファイルを見る場合
Linuxには、一般のユーザーは見ることができない「大切な設定ファイル」があります。これを閲覧するには、管理者(ルートユーザー)の権限が必要です。ネットワークの根本的な設定や、システムの履歴(ログ)を見る際によく使います。
管理者の場合は、コマンドの前にsudo(スードゥー)をつけるか、管理者アカウントに切り替えて実行します。以下の例は、システムの大事なメッセージが記録されている「syslog」を管理者が確認する様子です。
less /var/log/syslog
Jan 9 10:00:01 localhost systemd: Starting Session 1 of user root.
Jan 9 10:05:20 localhost kernel: [ 123.456] eth0: link up, 1000Mbps
:
管理者の画面では、プロンプト(入力を待つ記号)が「$」ではなく「#」になっていることが多いです。大事なファイルを扱うときは、誤って書き換えないように閲覧専用のlessを使うのが安全です。
7. これだけは覚えたい!lessの魔法のキー操作
lessを使いこなすために、初心者がまず覚えるべきキー操作をまとめました。これさえ知っていれば、黒い画面での作業がグッと楽になります。
- スペースキー: 1画面分、下にジャンプします。
- bキー: 1画面分、上(戻る方向)にジャンプします(Backの略)。
- j / kキー: 1行ずつ下/上に移動します。矢印キーでもOKです。
- /(スラッシュ): 文字の検索モードになります。探したい単語を入力してEnterを押すと、その場所まで飛んでくれます。
- qキー: 終了して元の画面に戻ります。
「/」を使った検索はとても便利です。例えば、膨大な設定ファイルの中から「IPアドレス」という言葉だけを探したいときに、上から順番に目で追う必要がなくなります。これもlessが「高機能」と言われる大きな理由です。
8. Linux初心者がmoreやlessで失敗しないためのコツ
パソコンを触ったことがない人がLinuxを操作するとき、一番怖いのは「どうやって終わらせればいいかわからない」という状態になることです。もしmoreやlessを使っていて操作不能に感じたら、まずは落ち着いて「q」を押してください。それでもダメなら「Ctrl(コントロール)キー」を押しながら「c」を押しましょう。
また、初心者のうちは「編集」をするのが怖いものですが、moreやlessはあくまで「見るだけ」のコマンドです。このコマンドを使ってファイルの中身が勝手に書き換わることはありません。安心して色々なファイルを覗いてみて、Linuxの構造を学んでいきましょう。ネットワークの設定を確認したり、プログラムが正しく動いているかログを見たりする習慣をつけると、上達が早くなります。