less命令
基本用法
less [选项] 文件名
示例:
less /var/log/syslog # 查看系统日志文件
常用操作
在 less
界面中,可以通过快捷键交互:
快捷键 | 功能 |
---|---|
空格 或 f | 向下翻一页(Forward) |
b | 向上翻一页(Backward) |
↓ 或 j | 向下滚动一行 |
↑ 或 k | 向上滚动一行 |
G | 跳转到文件末尾 |
g | 跳转到文件开头 |
/关键词 | 向前搜索(按 n 跳转到下一个匹配) |
?关键词 | 向后搜索(按 N 跳转到上一个匹配) |
q | 退出 less |
h | 打开帮助界面 |
实用选项
选项 | 功能 |
---|---|
-N |
显示行号 |
-i |
搜索时忽略大小写 |
-F |
如果文件可一屏显示,自动退出 |
-S |
截断过长的行(不换行) |
+F |
实时跟踪文件变化(类似 tail -f ) |
示例:
less -N +F /var/log/syslog # 显示行号并实时跟踪日志
高级技巧
- 查看命令输出:通过管道将命令输出传递给
less
。
ps aux | less # 分页查看进程列表
- 跳转到指定行:直接打开文件时跳转到第 N 行。
less +100 filename # 从第 100 行开始查看
- 忽略搜索大小写:启动时设置忽略大小写。
less -i filename
- 查看二进制文件:配合
xxd
查看二进制文件。
xxd /bin/ls | less
与 more
的区别
less
支持上下滚动,而more
只能向下翻页。less
功能更丰富(搜索、跳转等),推荐优先使用。
1. 转义特殊字符
在搜索时,使用 \
对特殊字符进行转义,告诉 less
按字面意思匹配它们。
特殊字符 | 转义写法 | 示例(搜索内容) |
---|---|---|
. |
\. |
example\.com |
* |
\* |
file\*.txt |
/ |
\/ |
path\/to\/file |
? |
\? |
config\?.ini |
操作步骤:
- 在
less
界面按/
进入搜索模式。 - 输入转义后的关键字(例如
example\.com
)。 - 按
Enter
搜索,用n
跳转到下一个匹配项。
2. 禁用正则表达式(纯文本搜索)
如果不想手动转义,可以通过 -p
选项或环境变量强制 less
进行纯文本搜索(视版本支持情况而定)。
方法一:启动时指定选项
less -p "example.com" filename # 直接搜索字面字符串(部分版本支持)
方法二:设置环境变量(优先使用字面搜索)
LESS=-Q less filename # -Q 禁用部分正则特性(可能不完全生效)
3. 搜索包含 /
的路径
如果关键字包含 /
(如路径),必须转义:
/path\/to\/file # 搜索 "/path/to/file"
常见正则元字符
需要转义的特殊字符列表(正则相关):
. * [ ] ^ $ \ + ? | ( )
例如:
- 搜索
file*.log
→ 输入file\*\.log
- 搜索
192.168.1.1
→ 输入192\.168\.1\.1
验证搜索模式
如果搜索结果异常,可以按 ESC + u
(先按 ESC
再按 u
)关闭高亮,检查是否因正则匹配导致问题。
通过以上方法,你可以精准搜索包含特殊字符的关键字。如果仍有问题,可以尝试先用 grep
过滤内容再交给 less
:
grep -F "example.com" filename | less # -F 表示固定字符串匹配
我的常用用法
less -ipN 文件名