【注】具体详解参见 man 手册。

1. 简介

more 是一个用于屏幕阅读的文件分页阅览过滤的 Shell 命令,一次阅览一屏幕文字,同时提供页面阅读的基于 vi 交互式命令的交互环境。

2. 格式

1
more [OPTIONS] FILE...

其中,OPTIONS 指定选项参数,FILE 指定阅读的文件。
除命令行指定 OPTIONS 选项参数外,more 也同时从环境变量 MORE(选项参数同样以 - 开头)中读取选项参数,但命令行指定的 OPTIONS 参数会覆盖环境变量里的选项参数。

3. 选项

选项参数 说明
-d 提示 “[Press space to continue, ‘q’ to quit.]”,并当用户按下无效键时显示 “[Press ‘h’ for instructions.]”
-l 不要在任何包含 ^L(换页)字符的行后暂停
-f 对逻辑行而非屏幕行进行计数
-p 不进行卷屏,而是接续当前屏幕内容后显示一屏文本
-c 不进行卷屏,而是清除当前一屏内容后显示一屏文本
-s 将重复的空行压缩为一行
-u 不显示下划线
-number 指定一开始显示的行数
+number 从指定行号开始显示文本
+/pattern 先根据正则表达式匹配模式 pattern,然后从第一个匹配处开始显示文本
--help 显示选项帮助文档
-V, --version 显示版本信息

4. 命令

more 命令在阅读文本时提供一系列基于 vi 命令的交互式命令:

【注】^X 表示 Ctrl + X,以下一些命令可前置一个十进制数字(以下用 k 表示)。

交互命令 说明
h/? 显示命令帮助信息
空格(SPACE) 显示下面 k 行文本(默认值为当前屏幕大小,指定 k 后不影响默认值)
z 显示下面 k 行文本(默认值为当前屏幕大小,指定 k 后 k 将变为新的默认值)
回车(RETURN) 显示下面 k 行文本(默认值为 1,指定 k 后不影响默认值)
d/^D 卷屏 k 行(默认值为当前卷屏大小,初始值为 11,指定 k 后 k 将变为新的默认值)
q/Q/INTERRUPT 退出
s 向前跳过 k 行文本(默认值为 1,指定 k 后不影响默认值)
f 向前跳过 k 屏文本(默认值为 1,指定 k 后不影响默认值)
b/^B 向前跳过 k 屏文本(默认值为 1,指定 k 后不影响默认值,只对文本有效而对管道无效)
' 前往上一个搜索(参见下文)起始的地方
= 显示当前行号
/pattern 搜索第 k 个匹配正则表达式模式的字符串(默认值为 1,指定 k 后不影响默认值)
n 搜索第 k 个匹配先前选项参数给定的正则表达式模式的字符串(默认值为 1,指定 k 后不影响默认值)
!command/:!command 在子 shell 中运行给定的 Linux Shell 命令
v 在当前行启动编辑器编辑(若 VISUAL 环境变量被设定则使用其值,否则检查 EDITOR 的值;若二者均未定义,则默认使用 vi 编辑器)
^L 刷新屏幕重新显示内容
:n 前往下数第 k 个文件(默认值为 1,指定 k 后不影响默认值)
:p 前往上数第 k 个文件(默认值为 1,指定 k 后不影响默认值)
:f 显示当前文件名和行号
. 重复上一个命令