less
less 是分页查看工具,边看边读文件,不需要先把整个文件载入内存,几个 GB 的日志也能瞬间打开。名字出自 “less is more”,它是早期 more 的增强版,可以往回翻。
less [选项] 文件command | less
q退出,h打开内置帮助 管道进来的内容 less 会先缓冲,此时往回翻是从缓冲里取,不是重读源头
| 选项 | 说明 |
|---|---|
-N |
显示行号 |
-S |
长行不折行,超出屏幕的部分靠左右滚动查看 |
-i |
搜索时忽略大小写,除非搜索词里含大写字母 |
-R |
保留 ANSI 颜色转义,看带色的日志要加 |
-X |
退出时不清屏,内容留在终端里 |
-F |
内容不足一屏就直接打印并退出,不进入交互界面 |
+F |
打开后进入跟随模式,效果同 tail -f,Ctrl-C 退出跟随 |
+<行号> |
打开后跳到指定行 |
+G |
打开后直接到文件末尾 |
-p <模式> |
打开后跳到第一处匹配 |
进入界面之后按键操作,不用回车。
| 按键 | 作用 |
|---|---|
j / k |
下移、上移一行 |
f / b |
下翻、上翻一屏,空格等同 f |
d / u |
下翻、上翻半屏 |
g / G |
跳到文件开头、结尾 |
<n>g |
跳到第 n 行 |
Ctrl-G |
显示当前位置和文件总行数 |
| 按键 | 作用 |
|---|---|
/模式 |
向后搜索,模式是正则,见 regex |
?模式 |
向前搜索 |
n / N |
跳到下一个、上一个匹配 |
&模式 |
只显示匹配的行,其余隐藏,再按 & 加空回车还原 |
Esc u |
取消搜索结果的高亮 |
| 按键 | 作用 |
|---|---|
F |
进入跟随模式,等同启动时的 +F |
v |
用 $EDITOR 打开当前文件 |
m<字母> / '<字母> |
打标记、跳回标记 |
-<选项> |
运行中临时切换某个选项,如 -N 开关行号 |
q |
退出 |
1. 看日志
less -N +G /var/log/syslog # 带行号,直接停在末尾less +F /var/log/syslog # 跟随写入,Ctrl-C 停下来往回翻
tail -f只能往后看,+F的好处是随时Ctrl-C就能回翻查上下文,看完按F继续跟
2. 看宽表格
ps aux | less -S不加
-S时长行会折到下一行,几列一错位就没法读了 加了之后用左右方向键横向滚动
3. 保留颜色
grep --color=always error app.log | less -R管道会让 grep 关掉颜色,得用
--color=always强制开,再用-R让 less 认转义序列
4. 打开就定位
less +/ERROR app.log # 跳到第一个 ERRORless +1200 app.log # 跳到第 1200 行5. 当 man 的分页器
export LESS='-R -i -F -X'man、git log 这些默认都用
$PAGER,多数系统上就是 lessLESS环境变量里的选项对所有调用生效,不用每次敲
man less- less 主页