less -Xオプションの使い方を完全ガイド!終了後も画面内容を残す方法
生徒
「Linuxでlessコマンドを使ってファイルを見たあと、画面の内容が消えちゃうのが不便なんです…。」
先生
「それはlessコマンドの仕様ですね。でも、-Xオプションを使えば、画面をクリアせずに内容をそのまま残せますよ。」
生徒
「それは助かります!どんなときに使うんですか?設定方法も教えてください!」
先生
「もちろん!less -Xオプションの基本と活用方法を一緒に見ていきましょう。」
1. lessコマンドとは?
lessは、LinuxやUnix系OSでテキストファイルの内容を効率よく閲覧するためのコマンドです。プログラミング未経験の方には「中身を見る専用のメモ帳」のようなものだとイメージすると分かりやすいでしょう。
最大の特徴は、大きなファイルでも動作が非常に軽いことです。一度に全てのデータを読み込まず、画面に表示する分だけを読み込むため、数万行あるような巨大なログファイルでも瞬時に開くことができます。
具体的な利用シーンとしては、以下のようなケースが挙げられます。
- システムが記録したエラーログを確認する
- サーバーの設定ファイルに何が書かれているかチェックする
- プログラムのソースコードを読み進める
例えば、初心者の方が自分のホームディレクトリにある設定ファイルを確認したい時は、次のように実行します。
less .bashrc
# .bashrc file symbols and aliases
# ...(ここにファイルの内容が表示され、上下キーでスクロールできます)
表示中は、キーボードの矢印キーで1行ずつ進んだり、Spaceキーでページ単位の移動が可能です。さらに、スラッシュ / を入力した後にキーワードを打てば、特定の文字列を検索することもできます。このように、「編集はしたくないけれど、じっくり中身を調べたい」という時に、これ以上なく便利なツールです。
操作を終えて元の画面に戻りたい時は、キーボードの q (Quitの略)を押すだけです。この「終了すると表示が消える」という標準の挙動を、次の章で解説する -X オプションでカスタマイズしていきます。
2. -Xオプションの基本的な使い方
-Xオプションは、lessでファイルを表示したあとに、画面の内容をクリアせずにそのまま残すためのオプションです。通常、lessを終了すると画面が自動で元の状態に戻ってしまいますが、-Xを使うと、表示していた内容がそのまま画面に残ります。
次のように使います。
less -X ファイル名
たとえば、以下のように実行します。
less -X example.txt
この状態でqキーを押してlessを終了すると、表示していたテキストがそのまま画面に残ります。
3. -Xを使うと便利なシーン
-Xオプションが便利な場面は、次のようなときです。
- lessで表示していた内容を、あとからコピー&ペーストしたいとき
- 画面を見ながら、別のターミナルでコマンドを打ちたいとき
- 学習中や講習中に、内容を残して説明を続けたいとき
通常のlessでは内容が消えてしまうため、あとで見返したいときに困ります。そんなときに-Xが役に立ちます。
4. 実行前と実行後の違いを比較しよう
下記のようなテキストファイルを用意したとします。
cat sample.txt
Line 1: Linux is powerful
Line 2: less command helps navigation
Line 3: You can scroll and search easily
通常のlessで開くと、終了後に内容はクリアされます。
less sample.txt
(less終了後に内容が画面から消える)
一方、-Xを使えば、less終了後も画面に内容が残ります。
less -X sample.txt
(less終了後も内容が表示されたまま)
5. 他のオプションとの組み合わせ例
-Xは、他のlessのオプションと一緒に使うことで、より便利になります。
-S:行を折り返さずに表示(横スクロール)-N:行番号を表示
これらを一緒に使うと、次のようなコマンドになります。
less -XSN log.txt
このようにすると、行番号を表示しながら、横スクロールにも対応し、終了後に内容も残るという便利な使い方ができます。
6. lessとcatの違いを理解しよう
初心者の方が混同しやすいのがcatコマンドとの違いです。catはファイルを一気に全部表示しますが、lessはスクロールしながら見れる点が大きな違いです。
| コマンド | 特徴 |
|---|---|
| cat | 全部を一気に表示、長いファイルだと流れて見えない |
| less | ページ単位で表示、スクロール・検索もできる |
特にログファイルや設定ファイルを扱うときは、less -Xを使った方が作業がしやすくなります。
7. エイリアスで毎回指定しなくて済む方法
毎回-Xをつけるのが面倒な人には、エイリアスの設定がおすすめです。
~/.bashrcという設定ファイルに次のように書き加えます。
echo "alias less='less -X'" >> ~/.bashrc
source ~/.bashrc
こうすることで、次回以降は単にlessと打つだけで、常に-Xが自動で付くようになります。