搜索
首页系统教程LINUXLinux中vim编辑器的搜索技巧

Linux中vim编辑器的搜索技巧

Feb 14, 2024 pm 10:42 PM
linuxlinux教程linux系统视频播放器linux命令外壳脚本嵌入式linuxlinux入门linux学习

vim编辑器是Unix系统中最先进的文本编辑器之一,它支持几乎所有的文件类型,也被称为程序员的编辑器。在本教程中,我们将学习如何在vim编辑器中执行搜索操作,以便快速找到我们需要的文本。

Linux中vim编辑器的搜索技巧

不过在此之前,请注意文中涉及到的所有的例子、命令、指令均是在 Ubuntu 14.04,Vim 7.4 下测试的。

Vim 中的基础搜索操作

当你在 Vim 中打开一个文件并且想要搜索一个特定的单词或模板,第一步你必须要先按下 Esc键从插入模式中退出(如果你正处于插入模式中)。之后输入/ 并紧接着输入你要搜索的单词或搜索模式。

例如,如果你想要搜索的单词是linux,下图显示的就是在 Vim 窗口底部的搜索命令:Linux中vim编辑器的搜索技巧

敲击回车键之后,你会看到 Vim 会将光标停留在从光标在插入模式中的位置开始,找到的包含此单词的第一行。如果你刚刚打开一个文件并且立即开始了搜索操作,搜索将从文件的首行开始。

如果想要移动到下一处包含被搜索单词位置,按n 键。当你遍历完所有被搜索模板所在之处,继续按n 键 Vim 将重复搜索操作,光标将回到第一次搜索结果出现位置。

Linux中vim编辑器的搜索技巧

在遍历搜索结果时,如果你想要回到上一匹配处,按N(即shift+n。同时,值得注意的是不管在什么时候,你都可以输入ggn 来跳转到第一个匹配处,或者GN 来跳转到最后一处。

当你恰好在文件的底部,而且想要逆向搜索的情况下,使用? 代替/ 来开始搜索。下图是一个例子:Linux中vim编辑器的搜索技巧

自定义你的搜索

1、 高亮搜索结果

尽管通过n 或N 从被搜索单词或模式的匹配处跳转到另一处很简单,但是如果匹配处能够高亮就更加人性化了。例如,请看下附截图:

Linux中vim编辑器的搜索技巧

这可以通过设置hlsearch 变量来实现,例如在普通/命令行模式中执行下述命令:

:set hlsearch

2、使搜索不区分大小写

在 Vim 中进行搜索默认是区分大小写的。这就意味着如果我要搜索linux ,那么Linux 是不会匹配的。然而,如果这不是你想要的搜索方式,你可以使用如下命令来使搜索变得不区分大小写:

:set ignorecase

所以当我设置ignorecase 变量后再使用前边提到的命令,搜索linux ,那么linux 所在处也会被高亮。

Linux中vim编辑器的搜索技巧

3、智能大小写搜索

Vim 提供了一个功能,只有当要搜索的单词 / 模板包含大写字母时,编辑器才会区分大小写。要想实现这种功能,必须先设置 ignorecase,再接着设置smartcase变量。

:set ignorecase
:set smartcase

例如,如果一个文件中既包含LINUX 也包含linux ,在开启智能大小写搜索功能时,如果使用 /LINUX 进行搜索,只有单词LINUX 处会被搜到。反之,如果搜索linux ,那么不论大小写的搜索结果都会被匹配。

4、递进搜索

就如谷歌一样,随着你输入查询字串(字串随你每输入一个字符不断更新)显示不同的搜索结果,Vim 也同样提供了递进搜索。要想使用这种特性,你必须在搜索前执行下述命令:

:set incsearch

一些很酷的在 Vim 中搜索的小技巧

你可能会发现还有一些其他的与搜索相关的小技巧很有用。

开始吧!如果你想要搜索一个文件中的一个单词,但是又不想输入它,你只需要将你的光标移到这个单词下然后按* (或者shift +8)。如果你想要启动一次部分搜索(例如:同时搜索in 和terminal ),那你需要将光标移到到单词(在本例中,in )下,然后通过在键盘上按 g* (按一次g 然后不断按* )。

注意:如果你想要逆向搜索,按# 或者g# 。

这里有个视频,你可以看看:

视频播放器

00:00

03:33

下一个,只要你想要,你可以获得所有被搜索单词或模式匹配处所在的行和行号的一个列表。这可以在你开始搜索后通过按 [I 来实现。如下图是一个列表结果如何在 Vim 窗口底部被分组和显示的例子:

Linux中vim编辑器的搜索技巧

接下来,你可能已经得知,Vim 默认是环形搜索的,意味着在到达文件结尾处(或者被搜索单词的最后一处匹配)时,如果继续按 “搜索下一个” 会将光标再次带回第一处匹配处。如果你希望禁止环形搜索,可以使用如下命令:

:set nowrapscan

再次开启环形搜索,使用如下命令即可:

:set wrapscan

最后,假设你想要对文件中已经存在的单词做一点小小的修改,然后对修改后的单词执行搜索操作,一种方法是输入 / 与要搜索的单词。但是如果这个单词又长又复杂,那么可能需要一点时间来输入它。

一个简单的办法是将光标移到你想要略微修改的单词下,按/ 之后再按Ctrl +r 最后按 Ctrl块 + w 。这个在光标下的单词不仅仅会被拷贝,也会被复制到/ 后,允许你对它进行修改并且继续进行搜索操作。

如果想要获得更多小技巧(包括如何使用鼠标来使在 Vim 中的操作变得简单),请前往 Vim 官方文档。

在本教程中,我们介绍了如何在vim编辑器中进行搜索和替换,包括使用斜杠和点方法,使用冒号和s命令,以及使用全局命令。我们还学习了如何设置大小写敏感或不敏感,以及如何搜索整个单词。vim编辑器提供了强大而灵活的搜索功能,可以帮助我们提高编辑效率。

以上是Linux中vim编辑器的搜索技巧的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:良许Linux教程网。如有侵权,请联系admin@php.cn删除
如何使用QEMU在Linux上安装和运行Freedos如何使用QEMU在Linux上安装和运行FreedosApr 29, 2025 am 10:36 AM

本指南向您展示了如何使用QEMU模拟器在Linux环境中设置免费和开源DOS的操作系统Freedos。 这使您可以在现代硬件上运行Legacy DOS软件和游戏,而无需分开

如何在Linux Mint上安装KDE等离子体22如何在Linux Mint上安装KDE等离子体22Apr 29, 2025 am 10:10 AM

Linux Mint,这款以简洁、稳定和易用性着称的操作系统,广受用户欢迎,尤其适合新手。 它默认使用Cinnamon桌面环境,提供简洁友好的用户界面。但如果您偏好不同的外观或需要更多自定义选项,可以安装其他桌面环境,例如KDE Plasma。 KDE Plasma是一个功能丰富、高度可定制且视觉效果出色的桌面环境,提供现代时尚的用户体验。它拥有广泛的自定义选项、高级窗口管理功能和精致的美感,非常适合希望更好地掌控桌面体验的用户。 本指南将逐步指导您在Linux Mint 22上安装KDE Pl

如何减少Linux上的高RAM和CPU使用如何减少Linux上的高RAM和CPU使用Apr 29, 2025 am 10:05 AM

Linux系统性能优化:降低RAM和CPU使用率 Linux系统功能强大且高效,但高RAM和CPU使用率会降低性能,减慢应用程序速度,甚至导致服务器、工作站或嵌入式系统崩溃。因此,优化资源使用对于系统平稳运行至关重要。 本指南将探讨降低Linux系统RAM和CPU使用率的实用方法,涵盖监控工具、进程管理、内核调整和系统优化技术,帮助您保持系统高效运行。 识别资源密集型进程 降低RAM和CPU使用率的第一步是识别哪些进程消耗了最多的资源。为此,可以使用以下几个命令行工具: a. 使用top

如何在Almalinux 8/9中启动到单用户模式如何在Almalinux 8/9中启动到单用户模式Apr 29, 2025 am 09:46 AM

AlmaLinux 8 和 9 的单用户模式 (也称为救援模式) 指南 单用户模式是一个精简的 Linux 环境,允许系统管理员执行维护任务、排查问题和从系统故障中恢复。当您需要重置 root 密码、修复配置错误、修复损坏的文件系统或调查阻止正常启动的系统错误时,单用户模式特别有用。 作为基于 RHEL 的发行版,AlmaLinux 8 和 9 通过 GRUB 引导加载程序提供了一种简单的进入单用户模式的方法。本指南将逐步解释如何在 AlmaLinux 8 和 9 上进入单用户模式。 什么是单用

Linux故障排除:5个常见问题以及如何解决这些问题Linux故障排除:5个常见问题以及如何解决这些问题Apr 29, 2025 am 09:42 AM

Linux系统以其强大和可靠性着称,但即使是经验丰富的用户也会遇到意想不到的问题。无论是意外删除的文件、忘记的root密码,还是系统运行缓慢,高效的故障排除技巧是成为Linux专家的关键。 本指南将介绍一些常见的Linux问题解决场景以及逐步解决方案,这些问题在系统管理员、开发人员和日常Linux用户中普遍存在。 场景一:意外删除重要文件 您意外地使用rm命令删除了一个重要文件,现在需要恢复它。与Windows和macOS不同,Linux没有内置的“回收站”来存储从终端删除的文件。 恢复选项取决

如何在Linux上永久更改Docker文件夹权限如何在Linux上永久更改Docker文件夹权限Apr 29, 2025 am 09:35 AM

Docker 是一款强大的工具,允许您在称为 容器 的隔离环境中运行应用程序。但是,有时您可能需要更改 Docker 文件夹的权限,以确保您的应用程序可以访问必要的文 件和目录。 本文将指导您完成在 Linux 系统上永久更改 Docker 文件夹权限的过程。 了解 Docker 文件夹权限 默认情况下,Docker 将其数据(包括镜像、容器和卷)存储在 Linux 系统上的特定目录中。最常见的目录是 /var/lib/docker。 这些文件夹的权限决定了谁可以读取、写入或执行其中的文件。如果

像专业人士一样管理Docker:在Linux上安装Portainer CE像专业人士一样管理Docker:在Linux上安装Portainer CEApr 29, 2025 am 09:24 AM

用Linux上的Portainer CE简化Docker Management:逐步指南 通过命令行管理Docker容器可能令人生畏,尤其是对于新移民而言。 Portainer CE(社区版)提供免费,轻巧且直观的Solutio

如何在Linux上使用Whisper AI进行现场音频转录如何在Linux上使用Whisper AI进行现场音频转录Apr 29, 2025 am 09:18 AM

本指南详细介绍了如何在Linux系统上安装和使用Whisper AI进行实时语音到文本转录。 Whisper AI是一种Openai创作,可提供多种语言的高准确性转录。虽然主要是为批处理设计的

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),