Linuxコマンド - more
概要
moreコマンドは、テキストファイルを1画面ずつ表示するコマンドである。
more <ファイル名>で実行、または、<コマンド> | moreのように他のコマンドの実行結果を1画面ずつ表示する場合に使用する。
また、moreコマンドにはサブコマンドが存在し、[Enter]キーで1行、[スペース]キーで1画面先に進み、ファイルの末尾まで表示すると終了する。
[Q]キーまたは[q]キーでコマンドを終了することができる。
moreコマンドの主なオプション
moreコマンドの主なオプションは、下表の通りである。
| オプション | 説明 |
|---|---|
| +<数値> | 数値で指定した行から表示する。 |
| +/<文字列> | 指定した文字列を検索して、見つけた行の2行上から表示する。 |
| -<数値> | 画面の行数を指定する。 |
| -c | 前に表示されたテキストをオーバーラップさせて、同じエリアにページを表示する。 |
| -d | 無効なキーが入力された場合には、ビープ音の代わりに簡単なヘルプを表示する。 |
| -f | 画面での行数ではなく、データの行数を表示する。 |
| -l | 改ページを無視する。 |
| -p | 画面をクリアし、テキストを表示する。 |
| -s | 連続した空行を1行にする。 |
| -u | 下線の処理を行わない。 |
moreコマンドの主なサブコマンド
moreコマンドは、[Enter]キーで1行、[スペース]キーで1画面先に進むほか、下表に示すサブコマンドによる操作が可能である。
サブコマンドは、moreコマンドの画面表示中にキーを入力すると即実行される。
検索する場合は、/記号に続けて検索文字列を入力して、[Enter]キーを押下すると特定の位置までスキップする。
| サブコマンド | 説明 |
|---|---|
| <数値> s | 指定行数分スキップする。 数値を指定しない場合は1行、または、直前に指定した行数分スキップする。 |
| <数値> f | 指定した数値分の画面をスキップする。 例えば、 2 fで2画面分、10 fで10画面分スキップする。
|
| <数値> b | 指定した数値分の画面を戻る。例えば、2 bで2画面分、10 bで10画面分戻る。※ moreコマンドでテキストファイルを開いている場合のみ有効。
|
| = | 現在の行番号を表示する。 |
| . | 直前のコマンドを繰り返す。 |
| /<正規表現> | 文字列を検索する。 ※現在表示している箇所より後ろが対象となる。 |
| n | 直前の検索を繰り返す。 |
| h | ヘルプを表示する。 |
テキストを1画面ずつ止めながら表示する
catコマンドで大きなサイズのテキストファイルの内容を表示する場合、moreコマンドを使用する。
以下に示すコマンドを実行して、指定したファイルを1画面ずつ止めながら表示する。
次の画面へ進む時は[スペース]キー、1行ずつ画面を進める時は[Enter]キーを押下する。
more <ファイル名>
実行結果を止めながら表示する
実行結果が長文のため、画面が流れる場合は、パイプとmoreコマンドを組み合わせて使用する。
<コマンド> | more
以下の例では、起動時のメッセージを再表示するdmesgコマンドの実行結果をmoreコマンドに渡して、1画面ずつ止めながら表示する。
dmesg | more
キーワードで検索
確認する箇所がある場合は、+/<文字列>オプションを付加して、目的の文字列の位置までスキップする。
以下の例では、/etc/bashrcファイルにあるPS1を設定している箇所を確認している。
more +/PS1 /etc/bashrc
以下の例では、確認する箇所を行数で指定している。
# 50行目までスキップする more +50 /etc/bashrc
行番号付きで表示する
moreコマンドの画面表示に行番号を付加する場合は、catコマンドと組み合わせる。
以下の例では、/etc/bashrcファイルの内容を行番号付きで表示してmoreコマンドに渡している。
cat -n /etc/bashrc | more
以下の例では、dmesgコマンドの実行結果を行番号付きでmoreコマンドに渡している。
dmesg | cat -n | more