今回はページャーです。ページャーは、これまでに何回か使ってました。ページャーはless,moreなどのコマンドのような機能を持つものです。ファイル内容をページ単位で表示できます。
普通にlessとかのコマンドを使っていて、すでに説明したものとばかり思い込んでいました。過去の目次を確認したらまったく取り上げていませんでした。という事で、今回はページャー機能を持つコマンドについて軽く説明します。
なお、以後1画面分を1ページの単位として説明します。画面サイズは使用している環境やターミナルによって1ページにあたりに表示できる内容は変わります。
more
最初にmoreを使ってみましょう。moreの後に内容を見たいファイル名(ファイルパス)を指定します。ここでは、この連載の1回目の原稿を表示してみます。カレントディレクトリにある1.txtファイルを見るには以下のように指定します。
more 1.txt
原稿の内容が一画面分表示されると、そこでキーの入力待ちになります。ENTERキー(リターンキー)を押すと1行進みます。
スペースキーを押すと次のページが表示されます。
確認したので終了させたい場合はqキーを押します。また、最後まで表示した後にキーを押すと終了します。
moreは他にもいろいろなオプションがあります。以下はラズベリーパイでman moreを実行した結果です。
macOSでのmore
macOSの場合、moreはlessが割り当てられているようです。man moreとすると図のようになります。
moreはlessで代用できるので、ほとんどの場合問題ないでしょう。
Windowsのmore
Windowsのコマンドでもmoreがあります。使い方は同じです。
less
moreと同じく多く使われているのがlessです。lessは、なかなか高機能なページャーです。man lessとすると図のようにオプションやキーの操作方法が表示されます。
less 1.txt
使い方はlessの後に半角空白で区切って内容を表示したいファイル名(ファイルパス)を指定します。スペースキーで次のページが表示されます。また、fキーを押しても同じように次のページが表示されます。
前のページを表示するにはbキーを押します。
リターンキーを押すと一行ずつ進みます。また、カーソルキーの↓を押しても同じように機能します。
一行前を表示するにはカーソルキーの↑キーを押します。
表示を途中で終了する場合はqキーを押します。
lessは最低限これだけのキー操作を覚えておけば十分だと思います。man lessとすると相当数のオプションがあります。気になった方は、いろいろ試してみるとよいでしょう。気が向いたら、関連するコマンドの時におまけで説明するかもしれません。
標準出力との組み合わせ
lessやmoreは、どちらかと言うと他のコマンドと組み合わせて使う事が多いかと思います。
いずれもパイプ(|)を利用します。以下のようにすると、カレントディレクトリのlsコマンドの出力結果をlessに渡します。
ls -la | less
検索
lessは検索も可能です。正規表現も使えます。
検索するには/キーを押します。/が表示されたら、その後に検索する文字列(またはパターンマッチさせたい文字列)を入力します。入力したらリターンキーを押すと検索が行われます。
nキーを押すと次にマッチした文字列に移動します。