首页/系统/Linux 运维命令速查/less 分页查看大文件
文本处理77 条

less 分页查看大文件

分页浏览器:翻页、搜索、跟随增长、看压缩文件一应俱全,是查看大文件与日志的常用交互工具。

Linux 运维命令速查系统更新于 2026-10-13

less 是什么

less 是交互式分页浏览器,用来读大文件与日志。它按需读取、不把整个文件载入内存,所以打开 GB 级日志也不会拖垮机器。除了翻页与搜索,它还能直接打开 .gz 压缩文件、跟随正在增长的文件、在多文件之间跳转,是「cat 会刷爆终端、编辑器会吃满内存」时的正确选择。

基本信息

适用平台Linux、Unix、macOS 通用;Windows 上随 Git for Windows 等工具附带
命令语法less [选项] 文件... ;命令 | less
常用选项-N 显示行号 / -S 不折行 / -R 原样显示颜色转义 / +F 直接进入跟随模式 / -p 模式 打开即跳到首个匹配 / -X 退出时不清屏
与 more 的区别less 可回翻、可搜索、可横向滚动;more 只能向前翻页

典型使用场景

  • 阅读 GB 级日志:less -N 打开后按 /ERROR 直接定位报错行
  • 实时盯日志的起手式:less +F app.log,需要回看时 Ctrl+C 退回浏览模式
  • 查看压缩日志:less app.log.gz 自动解压,相当于 zless
  • 看宽表不折行:less -S -N,长行左右滚动而不是被折成多行
  • 翻看长输出:history、diff 输出或命令结果通过管道交给 less 分页

常用示例

常用示例
less /var/log/syslog           # 打开大文件
less -N app.conf               # 显示行号
less -S access.log             # 不折行,左右滚动看宽表
less +F app.log                # 从跟随模式开始(类 tail -f)
less -p 'ERROR' app.log        # 打开即跳到第一个 ERROR
less app.log.1.gz              # 直接打开 .gz(自动解压)
history | less                 # 管道输出也能分页

常用按键

按键作用
空格 / b向下 / 向上翻一页
/模式 或 ?模式向下 / 向上搜索
n / N跳到下一个 / 上一个匹配
g / G跳到文件头 / 文件尾
F,Ctrl+C进入跟随模式 / 退出跟随回到浏览
q退出
less 能直接打开 .gz,靠的是发行版预置的 lesspipe 前置处理器;.bz2、.xz、.zst 是否自动解开取决于 lesspipe 的配置,不确定时先解压再读更稳。
多个文件一起给(less a.log b.log)时,按 :n 与 :p 在文件间切换,:e 文件名 可以临时换一个文件打开。
不要用 less 打开二进制文件:先 file 判断类型,需要看二进制内容改用 hexdump、xxd 或 strings。

与同类工具的分工

工具适合不适合
cat小文件一次性输出、管道拼接大文件会刷爆终端
more只需向前翻页的最小场景需要搜索与回翻
less大文件、日志、搜索、跟随、看压缩包需要修改文件内容
tail -f只看新增内容需要回看历史记录

进入后常做的动作

  • 按 G 跳到文件尾、按 g 回到开头,比一页页翻快得多
  • 用 /ERROR 搜索后连按 n 遍历所有匹配,N 反向查找
  • 按 F 进入跟随模式盯着增长,Ctrl+C 退回可翻阅状态
  • 用 :e 文件名 直接换一个文件打开,不必退出重进
  • 按 -N 在命令行区切换行号显示,配合编辑器快速跳行
搜索默认区分大小写,/ERROR 只匹配大写;想忽略大小写用 less -i 启动,或进入后按 -i 在命令行切换该开关。
退出后终端可能残留上一屏内容,可用 -X 关闭这项行为;脚本里需要干净输出时尤其要注意,必要时执行 tput rmcup 恢复屏幕。
less 打开大文件时是按需读取的,底部出现等待提示说明还在从磁盘取数据;文件放在慢速网络存储上时打开会明显变慢,先复制到本地再读往往更省时间。
把 less 设成默认分页器很常见:export PAGER=less 与 export LESS='-R -N' 一次把常用选项固定下来,git、man 等命令都会沿用这套配置;副作用是个别程序会跟着显示行号或颜色,遇到不符合预期的输出可以临时 unset LESS 再试。
搜索时想直接带上上下文行数,可以在搜索前用 -j 指定高亮行位置,或搜索后按回车再按 g 与 G 手动定位;真正需要「关键字前后各几行」的成块阅读,用 grep -C 先筛出片段再交给 less 更省事。

易错点

  • 管道进 less 时输入来自流,不能再用 F 跟随源文件,要跟随就直接 less +F 文件
  • 文件在打开后被轮转或覆盖,less 里看到的是旧快照,重新打开才见新内容
  • 强制查看二进制(-f)会把终端字符集搞乱,用 reset 或 stty sane 恢复
  • 不加 -R 时带颜色转义的日志会显示成 ^[[32m 这类乱码,看彩色日志要加 -R
  • PAGER 变量被改成 less -X 之类会影响退出行为,脚本里调用 less 要留意
  • 把 less 塞进脚本流程:它需要交互终端,在 cron、CI 或没有 tty 的环境里会立刻退出或报错,脚本里应改用 head、tail、sed -n 按范围取行

数据来源与参考

  • man 1 less(GNU less 手册)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌