命令简介

more 命令是 Linux 系统中一个用于分批查看文本文件内容的工具。它可以以一个独立的界面分页显示文件内容,非常方便用户逐步浏览文件内容。

命令格式

1
more [选项] 文件名

其中:

  • 文件名: 指定要查看的文件。

参数说明

参数 说明 备注
+/pattern 从文件中第一次出现指定模式开始显示 可用正则表达式
+/number 从文件第 number 行开始显示 number 为行号
-d 提示”[Press space to continue, ‘q’ to quit.]”而不是”[Hit return to continue]” 适合浏览有许多空行的文件
-l 仅显示单行而不滚动 适合浏览单行信息
-f 计算行形并尝试优化显示 可能会破坏行形
-p 不滚动,而是清除窗口并显示文本 适合快速浏览
-c 常显示由斜杠 ( / ) 引起的位置 方便查看位置
-s 将多个连续的空行压缩为一行显示 压缩显示空行
-u 禁用下划线效果 -
-V 显示版本信息并退出 -

命令实例

基本使用

1
2
3
4
5
6
7
8
# 查看文件内容
more file.txt

# 从文件第 20 行开始查看
more +20 file.txt

# 从文件中第一次出现 "pattern" 开始查看
more +/pattern file.txt

浏览模式

more 命令的浏览模式下,可以使用以下快捷键:

  • 空格键 (Space): 向下滚动一页
  • Enter 键: 向下滚动一行
  • b: 向上滚动一页
  • f: 向下滚动一页
  • q: 退出浏览
  • /pattern: 搜索指定模式
  • n: 查找下一个匹配项
  • N: 查找上一个匹配项

使用选项

1
2
3
4
5
6
7
8
# 显示文件 "file.txt" 的内容,并显示百分比和剩余行数
more -d file.txt

# 仅显示单行而不滚动
more -l file.txt

# 显示文件 "myfile.txt" 的内容,并压缩空格
more -s file.txt

扩展使用方法

1.与管道命令结合使用

more 命令可以与管道命令 (|) 结合使用,分页显示其他命令的输出结果。

1
2
3
4
5
# 分页显示文件列表
ls -l | more

# 分页显示系统日志
tail -n 100 /var/log/messages | more

2.查看二进制文件

虽然 more 命令主要用于查看文本文件,但它也可以用于查看二进制文件的十六进制内容。

1
2
# 查看 ELF 二进制文件的内容
more /bin/ls

3.结合 head 和 tail 命令

1
2
3
# 显示文件 "myfile.txt" 的前 10 行和最后 10 行
head -10 myfile.txt | more
tail -10 myfile.txt | more

4.结合 grep 命令过滤内容

1
2
# 显示文件 "myfile.txt" 中包含 "error" 的行
more myfile.txt | grep error

5.使用 more 命令实时监控文件变化

1
2
# 实时监控文件 "myfile.txt" 的变化,并使用 `more` 命令分页显示
tail -f myfile.txt | more

高级用法

1.定制显示效果

使用环境变量,可以定制 more 命令的显示效果。

1
2
3
4
5
6
7
8
# 设置每页显示行数
export MORE=-c

# 设置显示颜色
export MORE=-c -x2

# 设置暂停前显示的提示语
export MORE=-c -d

2.高级用法: 与 vi 编辑器结合使用

more 命令的浏览模式下,可以直接进入 vi 编辑器对文件进行编辑。

1
2
3
4
5
# 进入 vi 编辑器编辑文件
more file.txt
v
# 编辑文件...
:wq

通过以上实例和扩展用法,相信你已经对 more 命令有了更深入的了解。它不仅可以方便地分页查看文件内容,还可以与其他命令结合使用,实现更多高级功能。如果你还有任何疑问或需要进一步探讨,欢迎随时向我提出。