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 文件名