Linux vi编辑器如何查找与替换关键字

访客3年前黑客资讯1057

1. 前言

本文主要讲解如何在vi编辑器中搜索和替换字符。

vi提供了几种通过搜索指定字符串来搜索文件内容的指定位置的 *** 。vi还具有强大的全局替换功能。

Linux vi编辑器如何查找与替换关键字

vi如何搜索和替换字符

 

2. vi搜索字符串

字符串是连续的一个或多个字符。字符串可能包括字母、数字、标点符号、特殊字符、空格、制表符或回车符。字符串可以是语法单词,也可以是单词的一部分。

Linux vi编辑器如何查找与替换关键字

vi搜索字符串

 

要查找字符串,请键入/后跟要搜索的字符串,然后按Return。vi将光标定位在字符串的下一个位置。例如,要查找字符串meta,键入/meta并返回。

键入n转到字符串的下一个匹配项。键入N以转到前面的搜索结果。

要在文件中向后搜索,可以使用?而不是/。在这种情况下,n和N的方向相反。

搜索通常区分大小写:搜索A不会找到a。如果你想让vi在搜索过程中忽略大小写,输入:set ic。要把它改回默认的大小写模式,输入:set noic。

如果vi找到请求的字符串,光标将在之一次出现时停止。如果没有找到字符串,vi将显示在屏幕最后一行没有找到的模式。

某些特殊字符(/ & !。^ *

不能识别此Latex公式: \ ?)对搜索过程有特殊意义,在搜索中使用它们时必须“转义”。若要转义特殊字符,请在它前面加上反斜杠\。例如,搜索字符串anything?输入/anything\?并按回车。您可以使用这些特殊字符作为搜索函数的命令。如果要搜索包含一个或多个此类字符的字符串,则必须在特殊字符前加上反斜杠。要转义反斜杠本身,请键入\。3. vi精准搜索你可以使搜索更精确的标签字符串与指标为下列特点:开始行行结束开始的单词结束词通配符vi精准搜索若要匹配行首,请使用插入符号(^)开始搜索字符串。例如,要查找以abc开头的下一行,输入:/^abc若要匹配一行的结尾,请使用美元符号(

)结束搜索字符串。例如,查找以abc结尾的下一行。输入:

 

/abc\.$

注意,句点是用反斜杠转义的。
若要匹配单词的开头,请在字符串的开头输入<要匹配单词的结尾,请在字符串的末尾键入\>。因此,要匹配一个单词,而不是字符串,请在搜索模式中组合单词结尾和单词开头标记。例如,要查找下一个出现的单词—而不是字符串abc,输入:

/\

要匹配任何字符,请在要匹配的位置的字符串中键入句点.。例如,要查找下一个出现的“假信息”或“错误信息”,输入:

/.isinformation

因为这是一个字符串的搜索,而不是一个单词,所以这个搜索模式也可能会发现misinformationalist和disinformationi *** 这样的结构。

要搜索字符串中的可选字符,请将可选字符括在括号中。搜索模式/[md]stringfind以“m”或“d”开头的字符串。相反,/[d-m]字符串可以查找从“d”到“m”的任何字母开头的字符串。

若要匹配最后一个字符的零次或多次出现,请在字符串中键入星号*。您可以有效地组合方括号和星号来查找定义良好的替代方案。例如,要查找所有以a到z开头、以isinformation结尾的字符串,并查找所有出现的字符串isinformation,输入:

/[a-z]*isinformation

4. vi替换字符串

替换文本字符串的过程基于前面讨论的搜索过程。您可以在“搜索并替换”中使用所有特殊匹配字符进行搜索。

Linux vi编辑器如何查找与替换关键字

vi替换字符串

 

基本的命令形式是:

:g/要搜索字符/s//被替代的字符/g

然后按回车键。

因此,要用newspeak替换字符串disinformation的每次出现,输入:

:g/disinformation/s//newspeak/g

然后按回车。

您可以修改这个命令来停止搜索,并使vi查询是否希望在每个实例中进行替换。下面的命令使用gc(c代表“consult”,即交互询问)使vi在出现disinformation时停止,并询问是否要进行替换。用y表示是,用n表示不是。

:g/disinformation/s//newspeak/gc

您可以通过按Ctrl-C取消“交互询询问”搜索和替换功能。

5. 总结

通过本文,你应该对vi的日常操作有所了解了吧?特别是搜索和替换功能。

相关文章

linux是什么?Linux快速简易入门

linux是什么?Linux快速简易入门

  Linux是一个操作系统平台。我们平时常用的操作系统叫作Windows。当然,也有不少朋友使用苹果电脑,苹果电脑所用的系统叫作macOS。也许你还听说过一种系统叫作Unix,Unix是比Li...

Linux机器挖矿软件可从受感染系统中删除大量恶意软件?

Linux机器挖矿软件可从受感染系统中删除大量恶意软件?

互联网时代的到来,虽然给人们带来诸多便利,但同时也不得不面对各种网络安全问题。而恶意软件攻击则是比较常见的网络安全问题。恶意软件由多种威胁组成,会不断弹出,所以需要采取多种方法和技术来进行反病毒保护。...

linux服务器配置宝塔

前言 前几天免费申请了一个滴滴云~一直没时间打理,今天装了宝塔,遇到了些问题~ 下面以滴滴云为例,详解如何安装宝塔~ 首先设置密码 2.下载软件xshell软件 新建会话 登录帐号是dc2...

arm嵌入式开发板是什么,嵌入式linux开发板推荐

arm嵌入式开发板是什么,嵌入式linux开发板推荐

大家常用的嵌入式开发板一般是ARM和单片机这两种,很多人在印象中对于单片机与ARM的区别非常疑惑。从整体对比看来,ARM开发板就好像一家跨国大公司,每个部分分工明确,多功能处理问题,稳定性非常高,整体...

服务器部署nodejs的几种方法

三种方法 安装screen Screen,虚拟终端管理器。可以在后台管理终端界面,防止SSH断开以后任务停止运行。 安装方法: sudo apt-get screen (以ubuntu...

废旧Android手机如何改造成Linux服务器?

废旧Android手机如何改造成Linux服务器?

自从没有了学生身份之后,购买云服务器的价格是越来越贵了,不管是阿里云还是腾讯云。我寻思着能不能找到什么替代品,这让我想起之前在知乎不经意看到的,可以把 Android 手机改造成 Linux。如果再配...