less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。

常用less命令

  1. 打开日志文件
less mylog.log
  1. 定位到日志文件的最后一行:
Shift + G
  1. 往前一页一页翻页查看
Ctrl + B
  1. 向后搜索,
?关键字

全屏导航

  • Ctrl + F - 向前移动一屏
  • Ctrl + B - 向后移动一屏
  • Ctrl + D - 向前移动半屏
  • Ctrl + U - 向后移动半屏
  • Shift + G 移动到最后一行

单行导航

  • j - 向前移动一行
  • k - 向后移动一行

其它导航

  • G - 移动到最后一行
  • g - 移动到第一行
  • q / ZZ - 退出 less 命令

常见的使用方法

搜索

当使用命令 less file-name 打开一个文件后,可以使用下面的方式在文件中搜索。搜索时整个文本中匹配的部分会被高亮显示。

向前搜索
  • /字符串 - 使用一个模式进行搜索,并定位到下一个匹配的文本
  • n - 向前查找下一个匹配的文本
  • N - 向后查找前一个匹配的文本
向后搜索
  • ?字符串 - 使用模式进行搜索,并定位到前一个匹配的文本
  • n - 向后查找下一个匹配的文本
  • N - 向前查找前一个匹配的文本
全屏导航
  • Ctrl + F - 向前移动一屏
  • Ctrl + B - 向后移动一屏
  • Ctrl + D - 向前移动半屏
  • Ctrl + U -向后移动半屏
单行导航
  • j - 向下移动一行
  • k - 向上移动一行
其它导航
  • G - 移动到最后一行
  • g - 移动到第一行
  • 按空格 - 向下翻一页
  • b - 向上翻一页
  • d - 向下翻半页
  • u - 向上翻半页
  • q / ZZ - 退出 less 命令
编辑文件

v - 进入编辑模式,使用配置的编辑器编辑当前文件

标记导航

当使用 less 查看大文件时,可以在任何一个位置作标记,可以通过命令导航到标有特定标记的文本位置。

  • ma - 使用 a 标记文本的当前位置
  • a - 导航到标记 a 处
浏览多个文件
  • 传递多个参数给 less,就能浏览多个文件

less file1 file2

  • 正在浏览一个文件时,使用 :e 打开另一个文件

less file1 :e file2

当打开多个文件时,使用如下命令在多个文件之间切换

  • :n - 浏览下一个文件
  • :p - 浏览前一个文件
less 版 tail -f

在 Linux 动态查看日志文件常用的命令非 tail -f 莫属,其实 less 也能完成这项工作,使用 F 命令。

使用 less file-name 打开日志文件,执行命令 F,可以实现类似 tail -f 的效果

特殊字符转义

less 命令中特殊字符通过 \ 字符转义,搜索特色字符可以同 \ 转义,如,:[]字符等

示例

# 搜索参数[001]
?参数\[001\]

语法

less [参数] 文件

参数说明

  • -b <缓冲区大小> - 设置缓冲区的大小
  • -e - 当文件显示结束后,自动离开
  • -f - 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
  • -g - 只标志最后搜索的关键词
  • -i - 忽略搜索时的大小写
  • -m - 显示类似more命令的百分比
  • -N - 显示每行的行号
  • -o <文件名> - 将less 输出的内容在指定文件中保存起来
  • -Q - 不使用警告音
  • -s - 显示连续空行为一行
  • -S - 行过长时间将超出部分舍弃
  • -x <数字> - 将"tab"键显示为规定的数字空格
  • /字符串 - 向下搜索"字符串"的功能
  • ?字符串 - 向上搜索"字符串"的功能
  • n - 重复前一个搜索(与 / 或 ? 有关)
  • N - 反向重复前一个搜索(与 / 或 ? 有关)
  • b - 向上翻一页
  • d - 向后翻半页
  • h - 显示帮助界面
  • Q - 退出less 命令
  • u - 向前滚动半页
  • y - 向前滚动一行
  • 空格键 - 滚动一页
  • 回车键 - 滚动一行
  • [pagedown] - 向下翻动一页
  • [pageup] - 向上翻动一页

实例

  1. 查看文件
less log2013.log
  1. ps查看进程信息并通过less分页显示
ps -ef |less
  1. 查看命令历史使用记录并通过less分页显示
[root@localhost test]# history | less
22  scp -r tomcat6.0.32 root@192.168.120.203:/opt/soft
23  cd ..
24  scp -r web root@192.168.120.203:/opt/
25  cd soft
26  ls
……省略……
  1. 浏览多个文件
less log2013.log log2014.log

说明

  • 输入 :n后,切换到 log2014.log
  • 输入 :p 后,切换到log2013.log