0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何实现使用less命令在终端中进行搜索呢

冬至子 来源:TIAP 作者:刘光录 2022-11-15 17:14 次阅读

less 命令非常适合在终端中查看文本文件的内容,且不会使屏幕看起来很混乱而至眼花缭乱。

如果你正在查看一个非常大的文件,并且想在其中查找一个特定的文本,可以在 less 命令中执行搜索,而不需要手动执行。我们今天来介绍下如何实现。

使用 less 命令进行搜索

首先使用 less 命令打开要查看的文件,按下 斜杠 / 键 ,然后输入要搜索的表达式(或者字符串),再然后按 回车键

图片

它将会从你当前的位置开始向前搜索,定位到第一个找到的匹配项。被找到的匹配的内容会被突出显示。

图片

按 n 键可以移动到下一个被找到的匹配项,按 N(shift+n)键可以返回到上一个被找到的匹配项。

你还可以使用空格键和 b 键在页面上下移动,匹配项(如果有)会被高亮显示。

如果没有找到被搜索的内容,在底部会看到 “Pattern not found (press RETURN)”:

图片

注:如果想要执行 向后搜索 ,可以使用 ?pattern 来代替 /pattern ,它会从当前位置开始向后搜索。

执行不区分大小写的搜索

默认情况下,less 中的搜索是区分大小写的。要执行不区分大小写的搜索,可以在 less 视图中输入 -I 选项:

-I

在开始搜索之前,或者搜索中使用,其结果是一样的。

图片

实际上,它是切换了是否区分大小写的搜索;再按一次,搜索将再次区分大小写。

另外,可以使用小写的 i 来代替 I,但是如果要搜索的字符串中含有大写字母,i 是不起作用的。所以最好使用大写的 I。

如果需要,在使用 less 命令的时候就启用不区分大小写的模式:

less -I filename

注:可以使用 /!pattern 来搜索与表达式不匹配的行。

只显示匹配行

如果觉得使用 n 或者 N 来前后查看匹配项比较麻烦,可以通过使用 &pattern 来代替 /pattern 执行搜索,这样可以在 less 命令中只显示匹配行:

&pattern

与 /pattern 不同,使用 &pattern 后不会将匹配项高亮显示,它只显示包含匹配内容的行:

图片

可以使用箭头键在各行之间移动,在底部会显示行号。但这行号是不连续的,因为终端中只显示了匹配行。

在使用 less 命令的同时启动搜索

事实上,在使用 less 命令打开文件后,即可进行搜索:

less -p pattern filename

还可以通过添加 -I 选项来执行不区分大小写的搜索:

less -Ip pattern filename

在这里需要注意,上述选项是有先后顺序的,如果使用 -pI ,则不会起作用。

因为 less 只是一个查看器,所以它不能像 vim 那样进行查找替换。在使用 less 查找内容的时候,除了我们上述介绍的,还有其他的一些功能,大家感兴趣的可以查看一下 man 手册。

审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • VIM
    VIM
    +关注

    关注

    0

    文章

    134

    浏览量

    15261
收藏 人收藏

    评论

    相关推荐

    Linux中如何使用less、more和most命令

    Linux 系统上有许多 GUI 文本编辑器可用于查看和修改文本文件。但如果您只想在终端中读取文本文件。那么 Linux 上有许多可用的命令可以让你做到这一点,其中三个是 less,more 和 most。 继续阅读以了解如何使
    发表于 12-05 09:22 1523次阅读

    基于Linux终端命令行的快捷键的详细解析

    shell命令终端中,Ctrl+n相当于方向向下的方向键,Ctrl+p相当于方向向上的方向键。 命令
    的头像 发表于 02-05 08:33 6677次阅读

    STM32f103如何实现命令终端

    STM32f103如何实现命令终端
    发表于 12-14 06:35

    littlevgl8移植的源码能否openwrt中进行添加并编译

    littlevgl8移植的源码能否openwrt中进行添加并编译?求解
    发表于 12-28 06:20

    如何在android中进行驱动

    如何在android中进行驱动?并输出dev和sys中的界面用程序调用
    发表于 03-02 09:53

    littlevgl8移植的源码能否openwrt中进行添加并编译

    littlevgl8移植的源码能否openwrt中进行添加并编译?求解
    发表于 03-29 19:16

    WCDMA终端小区搜索过程详解

    不同的移动通信制式采用了不同的终端小区搜索过程,而移动终端的网络搜索能力和时长将直接影响用户的感知。本文就从技术角度来解析WCDMA终端的网
    发表于 02-24 16:33 42次下载
    WCDMA<b class='flag-5'>终端</b>小区<b class='flag-5'>搜索</b>过程详解

    Protel DXP中进行FPGA设计和仿真

    Protel DXP中进行FPGA设计和仿真
    发表于 12-25 10:09 0次下载

    SDAccel中进行调试

    SDAccel中进行调试
    的头像 发表于 11-29 06:20 1859次阅读

    Linux系统中的翻页命令more和less使用教程

    和二进制文件-g 只标志最后搜索的关键词-i 忽略搜索时的大小写-m 显示类似more命令的百分比-N 显示每行的行号-o 将less 输出的内容
    发表于 04-02 14:46 573次阅读

    Linux命令大全搜索工具大全

    ,增加了一些数据。对他们的辛勤劳动表示敬意,个人希望能本地离线搜索,不喜欢广告,希望得到干净漂亮的预览界面,业余和工作时间需要使用大量的命令,所以干了一件看似比较愚蠢的事情,回头有空的时候估计能做一个App?或者是
    发表于 01-05 08:00 4次下载

    如何在Linux使用less命令

    Less是一个命令程序,它可以分页显示文件或其它命令输出的内容。它类似于`more`命令,但具有更高级的功能,可让您在文件中前后导航。
    的头像 发表于 01-04 17:11 1964次阅读

    NAS下搭建linux命令搜索引擎教程

    前面写到了程序专用的vscode,今天再来介绍一款程序佬专用的搜索引擎——Linux命令搜索引擎。该引擎专用于搜索Linux下的各种命令,毕
    的头像 发表于 02-24 11:33 1064次阅读
    NAS下搭建linux<b class='flag-5'>命令</b><b class='flag-5'>搜索</b>引擎教程

    如何使用ip命令Linux中进行网络管理

    Linux中,'ip'命令是管理网络方面最强大的命令之一。该命令可以允许用户不使用任何其他网络管理工具的情况下管理网
    发表于 05-31 12:25 344次阅读

    linux中more和less命令有何区别

    Linux 中的 more 和 less 是两个常见的命令行工具,用于浏览文本文件的内容,但它们之间有一些区别。 功能:more 和 less 的主要功能是
    的头像 发表于 11-23 11:15 2485次阅读