最近开始学习“learn linux the hard way”,第二小节中提出了less命令。less是一个强大的命令,它可以对一个或多个文件或者其他输出进行显示,搜索某个词,也可以通过命令切换到当前配置的编辑状态。less is more,more is less。
1.搜索
当使用命令 less file-name 打开一个文件后,可以使用下面的方式在文件中搜索。搜索时整个文本中匹配的部分会被高亮显示。

1) 向前搜索

/ : 使用一个模式进行搜索,并定位到下一个匹配的文本

n : 向前查找下一个匹配的文本

N : 向后查找前一个匹配的文本



2) 向后搜索

? : 使用模式进行搜索,并定位到前一个匹配的文本

n : 向后查找下一个匹配的文本

N : 向前查找前一个匹配的文本



2 翻页操作

ctrl + F :向前移动一屏

ctrl + B :向后移动一屏

ctrl + D :向前移动半屏

ctrl + U :向后移动半屏



3 单行导航

j : 向前移动一行

k : 向后移动一行



4 其它导航

G : 移动到最后一行

g : 移动到第一行

q / ZZ : 退出 less 命令



5 编辑文件

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





6 标记导航

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

ma : 使用 a 标记文本的当前位置

'a : 导航到标记 a 处



7 浏览多个文件

方式一,传递多个参数给 less,就能浏览多个文件。

less file1 file2



方式二,正在浏览一个文件时,使用 :e 打开另一个文件。

less file1

:e file2



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

:n - 浏览下一个文件

:p - 浏览前一个文件


8 less 版 tail -f
在 Linux 动态查看日志文件常用的命令非 tail -f 莫属,其实 less 也能完成这项工作,使用 F 命令。
使用 less file-name 打开日志文件,执行命令 F,可以实现类似 tail -f 的效果。