搜尋
首頁系統教程LinuxLinux中vim編輯器的搜尋技巧
Linux中vim編輯器的搜尋技巧Feb 14, 2024 pm 10:42 PM
linuxlinux教程linux系統影片播放器linux指令shell腳本嵌入式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、遞進搜尋

#就像Google一樣,隨著你輸入查詢字串(字串隨你每輸入一個字元不斷更新)顯示不同的搜尋結果,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刪除
什么是linux设备节点什么是linux设备节点Apr 18, 2022 pm 08:10 PM

linux设备节点是应用程序和设备驱动程序沟通的一个桥梁;设备节点被创建在“/dev”,是连接内核与用户层的枢纽,相当于硬盘的inode一样的东西,记录了硬件设备的位置和信息。设备节点使用户可以与内核进行硬件的沟通,读写设备以及其他的操作。

Linux中open和fopen的区别有哪些Linux中open和fopen的区别有哪些Apr 29, 2022 pm 06:57 PM

区别:1、open是UNIX系统调用函数,而fopen是ANSIC标准中的C语言库函数;2、open的移植性没fopen好;3、fopen只能操纵普通正规文件,而open可以操作普通文件、网络套接字等;4、open无缓冲,fopen有缓冲。

linux中什么叫端口映射linux中什么叫端口映射May 09, 2022 pm 01:49 PM

端口映射又称端口转发,是指将外部主机的IP地址的端口映射到Intranet中的一台计算机,当用户访问外网IP的这个端口时,服务器自动将请求映射到对应局域网内部的机器上;可以通过使用动态或固定的公共网络IP路由ADSL宽带路由器来实现。

linux中eof是什么linux中eof是什么May 07, 2022 pm 04:26 PM

在linux中,eof是自定义终止符,是“END Of File”的缩写;因为是自定义的终止符,所以eof就不是固定的,可以随意的设置别名,linux中按“ctrl+d”就代表eof,eof一般会配合cat命令用于多行文本输出,指文件末尾。

什么是linux交叉编译什么是linux交叉编译Apr 29, 2022 pm 06:47 PM

在linux中,交叉编译是指在一个平台上生成另一个平台上的可执行代码,即编译源代码的平台和执行源代码编译后程序的平台是两个不同的平台。使用交叉编译的原因:1、目标系统没有能力在其上进行本地编译;2、有能力进行源代码编译的平台与目标平台不同。

linux怎么判断pcre是否安装linux怎么判断pcre是否安装May 09, 2022 pm 04:14 PM

在linux中,可以利用“rpm -qa pcre”命令判断pcre是否安装;rpm命令专门用于管理各项套件,使用该命令后,若结果中出现pcre的版本信息,则表示pcre已经安装,若没有出现版本信息,则表示没有安装pcre。

linux怎么查询mac地址linux怎么查询mac地址Apr 24, 2022 pm 08:01 PM

linux查询mac地址的方法:1、打开系统,在桌面中点击鼠标右键,选择“打开终端”;2、在终端中,执行“ifconfig”命令,查看输出结果,在输出信息第四行中紧跟“ether”单词后的字符串就是mac地址。

linux中rpc是什么意思linux中rpc是什么意思May 07, 2022 pm 04:48 PM

在linux中,rpc是远程过程调用的意思,是Reomote Procedure Call的缩写,特指一种隐藏了过程调用时实际通信细节的IPC方法;linux中通过RPC可以充分利用非共享内存的多处理器环境,提高系统资源的利用率。

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脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
1 個月前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器