more
more 命令是最原始的分页工具,适合快速浏览大文件。它的核心逻辑是:加载一屏,暂停等待操作,继续加载下一屏。
基本用法
常用选项
| 选项 |
说明 |
-数字 |
指定每屏显示的行数,如 more -10 file |
-d |
显示友好的操作提示(按空格继续,按 q 退出) |
-s |
将多个连续空行压缩为一行显示 |
+数字 |
从指定行开始显示 |
+/字符串 |
从匹配搜索字符串的位置开始显示 |
交互式操作命令
进入 more 浏览界面后,可以使用这些快捷键:
| 按键 |
功能 |
空格键 |
向下翻一屏 |
回车键 |
向下翻一行 |
b |
向上翻一屏(注意:只对文件有效,对管道无效) |
/字符串 |
向下搜索指定字符串 |
n |
重复上一次搜索 |
= |
显示当前行号 |
v |
调用 vi 编辑器编辑当前文件) |
q |
退出 more |
示例:查看大型日志文件
1 2 3 4 5 6 7 8
| more -10 /var/log/syslog
more +100 /var/log/syslog
ls -la / | more
|
more 的致命短板:只能向前翻页,无法自由回看。于是,less 应运而生。
less
less 设计之初的宗旨就是 “more 的反义词” ——它不会在启动时读取整个文件,而是按需加载,因此打开超大文件时速度极快。更重要的是,less 提供了完全自由的上下浏览和搜索体验。
基本用法
常用选项
| 选项 |
说明 |
-N |
显示行号 |
-i |
搜索时忽略大小写 |
-S |
不换行,长行可通过左右键横向滚动查看 |
-m |
显示类似 more 的百分比进度提示 |
交互式操作命令
less 的命令集更加丰富,很多沿用了 vi 编辑器的按键习惯:
| 按键 |
功能 |
空格/f/PageDown |
向下翻一屏 |
b/PageUp |
向上翻一屏 |
回车 / ↓ / j |
向下滚动一行 |
y / ↑ / k |
向上滚动一行 |
g |
跳到文件开头) |
G |
跳到文件末尾) |
/字符串 |
向下搜索指定字符串(高亮显示匹配项)) |
?字符串 |
向上搜索指定字符串) |
n |
跳到下一个搜索匹配项 |
N |
跳到上一个搜索匹配项 |
p/ % |
跳到文件指定百分比位置(如 50p 跳到 50% 处) |
= |
显示当前文件名、行号和百分比) |
F |
进入“实时追更”模式(类似 tail -f ),适合监控日志;按 Ctrl+C 退出) |
q |
退出 less |
less 的进阶玩法
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| less -N /etc/nginx/nginx.conf
less -i /var/log/messages
less +F /var/log/syslog
less -S longlines.log
|
more vs less
| 对比维度 |
more |
less |
| 向后翻页 |
✅ 支持 |
✅ 支持 |
| 向前翻页 |
⚠️ 有限支持(按 b) |
✅ 完全支持 |
| 上下逐行滚动 |
❌ 不支持 |
✅ 支持(↑↓ / j / k) |
| 搜索高亮 |
❌ 无高亮 |
✅ 高亮显示匹配项 |
| 向上搜索 |
❌ 不支持 |
✅ 支持(?) |
| 跳转到文件尾 |
❌ 不支持 |
✅ 支持(G) |
| 实时追更日志 |
❌ 不支持 |
✅ 支持(F模式) |
| 加载方式 |
预读全部内容 |
按需加载,启动更快 |
| 适合场景 |
快速粗略浏览 |
深度阅读、日志排查 |
more 与 less 的日常使用建议
- 查看超大的日志文件(几百 MB 甚至 GB 级别):首选
less。启动迅速,按需加载内存,不会卡死系统)。
- 排查线上故障:用
less +F 实时追踪日志,发现问题后按 Ctrl+C 锁定当前屏幕,再用 / 精准定位关键词。
- 快速浏览命令帮助文档:
ps aux | less 比 more 更好用,因为可以上下翻页慢慢看。
- 分析服务器日志时:推荐组合技——
grep "ERROR" app.log | less -N,先过滤关键信息,再分页查看并显示行号,方便定位代码位置。