Linux中vim中进行替换/批量替换

Linux中vim中进行替换/批量替换

一:在 Vim 中进行文本替换的操作是通过使用 :s(substitute)命令来实现的。这里是一些基本的替换命令

  1. 替换当前行的第一个匹配项:

    :s/old/new/
    

    这将替换当前行中第一个出现的 “old” 为 “new”。

  2. 替换当前行的所有匹配项:

    :s/old/new/g
    

    在命令的末尾添加 g 标志表示替换当前行中所有出现的 “old” 为 “new”。

  3. 替换全文中的第一个匹配项:

    :%s/old/new/
    

    :s 前加上 % 表示对整个文档进行操作,但这只会替换每一行的第一个匹配项。

  4. 替换全文中的所有匹配项:

    :%s/old/new/g
    

    同样是对整个文档进行操作,并替换每一行中所有的 “old”。

  5. 替换指定范围内的匹配项:

    :10,20s/old/new/g
    

    这会替换从第 10 行到第 20 行中所有出现的 “old”。

  6. 替换并确认每个匹配项:

    :%s/old/new/gc
    

    在命令的末尾添加 c 标志会让 Vim 在每次替换之前提示你确认。

记得在 Vim 的命令模式下输入这些命令,模式切换通过按 Esc 键进行。完成输入命令后,按 Enter 键执行命令。

二:在文本中替换路径 /usr/local/bin/usr/bin,因为路径中包含斜杠 /,它通常用作 Vim 替换命令中的分隔符,所以需要对其进行转义。在 Vim 中,你可以使用反斜杠 \ 来转义字符

以下是一个替换命令的例子,其中转义了路径中的斜杠:

:%s/\/usr\/local\/bin/\/usr\/bin/g

在这个例子里,每个斜杠前面的反斜杠告诉 Vim 将其视为字面上的斜杠,而不是命令的一部分。

Vim 还允许你使用其他字符作为分隔符,这样你就可以避免转义斜杠。比如说,你可以使用井号 # 作为分隔符:

:%s#/usr/local/bin#/usr/bin#g

这样做可以提高命令的可读性,避免转义带来的复杂性。在替换命令中,你可以自由选择分隔符,只需确保它不会出现在你想要查找或替换的文本中。

请注意,这里的 “old” 和 “new” 可以是任何字符串,如果它们包含特殊字符或正则表达式的部分,可能需要做适当的转义处理。

image-20231222114225231

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/239485.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux ContOS7 日志管理(rsyslog)

目录 01. rsyslog 记录日志程序 02.日志文件 03.日志等级 Linux 日志文件是记录 Linux 系统运行信息的文件。它们类似于人类的日记,记录了系统的各种活动,如用户登录、进程启动、错误消息等。 Linux 日志文件通常存储在 /var/log/ 目录中。该目录包含…

Linux应用程序管理(rpm yum 源码安装)

一.Linux应用程序基础 当我们主机安装Linux操作系统时候,也会同时安装一些软件或网络服务等等,但是随着系统一起安装的软件包毕竟他是少数的,能够实现的功能也是有限的,如果需要实现更丰富的功能,那就需要安装应用程序…

构建数字化金融生态系统:云原生的创新方法

内容来自演讲:曾祥龙 | DaoCloud | 解决方案架构师 摘要 本文探讨了金融企业在实施云原生体系时面临的挑战,包括复杂性、安全、数据持久化、服务网格使用和高可用容灾架构等。针对网络管理复杂性,文章提出了Spiderpool开源项目,…

The Cherno C++笔记 03

目录 Part 07 How the C Linker Works 1.链接 2.编译链接过程中出现的错误 2.1 缺少入口函数 注意:如何区分编译错误还是链接错误 注意:入口点可以自己设置 2.2 找不到自定义函数 2.2.1缺少声明 2.2.2自定义函数与引用函数不一致 2.3 在头文件中放入定义 …

git入门以及如何推送代码到云端

Gitee(码云)是开源中国于2013年推出的基于Git的代码托管平台、企业级研发效能平台,提供中国本土化的代码托管服务。 地址: Gitee - 基于 Git 的代码托管和研发协作平台 步骤1:创建远程仓库 在Gitee上创建一个新的远…

c# OpenCV 检测(斑点检测、边缘检测、轮廓检测)(五)

在C#中使用OpenCV进行图像处理时,可以使用不同的算法和函数来实现斑点检测、边缘检测和轮廓检测。 斑点检测边缘检测轮廓检测 一、斑点检测(Blob) 斑点检测是指在图像中找到明亮或暗的小区域(通常表示为斑点)&#…

java类和对象的思想概述

0.面向对象Object OOP——名人名言:类是写出来的,对象是new出来的 **> 学习面向对象的三条路线 java类以及类成员:(重点)类成员——属性、方法、构造器、(熟悉)代码块、内部类面向对象特征&…

【论文解读】CNN-Based Fast HEVC Quantization Parameter Mode Decision

时间:2019 年 级别:SCI 机构:南京信息工程大学 摘要 随着多媒体呈现技术、图像采集技术和互联网行业的发展,远程通信的方式已经从以前的书信、音频转变为现在的音频/视频。和 视频在工作、学习和娱乐中的比例不断提高&#xff0…

bugku-misc-这是一张单纯的图片

附件:图片 1、查看属性 2、010 whex打开看看 可以看到html编码,将文件后缀,改成html,打开 即可

华为设备命令行操作基础

熟悉VRP命令行并且熟练掌握VRP配置是高效管理华为网络设备的必备基础。 设备初始化启动 管理员和工程师如果要访问在通用路由平台VRP上运行的华为产品,首先要进入启动程序。开机界面信息提供了系统启动的运行程序和正在运行的VRP版本及其加载路径。启动完成以后&am…

鸿蒙-ArkUI 常用布局容器对齐方式

概念 主轴:在布局容器中,默认存在两根轴,分别是主轴和交叉轴,不同的容器中主轴的方向不一样的。 在Column容器中主轴的方向是垂直方向。在Row容器中主轴的方向是水平方向。在Flex容器中可以通过direction参数设置主轴的方向&…

MySQL数据库 触发器

目录 触发器概述 语法 案例 触发器概述 触发器是与表有关的数据库对象,指在insert/update/delete之前(BEFORE)或之后(AFTER),触发并执行触发器中定义的soL语句集合。触发器的这种特性可以协助应用在数据库端确保数据的完整性,日志记录&am…

分布式搜索elasticsearch概念

什么是elasticsearch? elasticsearch是一款非常强大的开源搜索引擎,可以帮助我们从海量数据中快速找到需要的内容 目录 elasticsearch的场景 elasticsearch的发展 Lucene篇 Elasticsearch篇 elasticsearch的安装 elasticsearch的场景 elasticsear…

【SpringMVC】REST(Representation State Transfer)ful开发

REST全称Representation State Transfer,表现形式状态转换 文章目录 1. 为什么提出了REST?2. RESTful入门案例案例代码修改请求方式修改成RESTful风格,并以POST方式提交 RESTful格式下传参RESTful入门案例总结RequestBody,Reques…

Linux下编写zlg7290驱动(3)-键盘驱动编写

2.3. 数据处理实现 执行上述代码后系统中就注册了我们的input设备,接下来我们要做的是活得键盘的键值,zlg7290多可以支持64个按键,每个按键按下后都会产生一个中断,我们写驱动是可以使用轮询不断检测是否有按键也可以触发中断来判…

云原生之深入解析基于FunctionGraph在Serverless领域的FinOps的探索和实践

一、背景 Serverless 精确到毫秒级的按用付费模式使得用户不再需要为资源的空闲时间付费。然而,对于给定的某个应用函数,由于影响其计费成本的因素并不唯一,使得用户对函数运行期间的总计费进行精确的事先估计变成了一项困难的工作。以传统云…

git分支解析

1、概述和优点 在版本控制过程中,同时会推进多个任务,为此,就可以为每个任务创建单独的分支。开发人员可以把自己的任务和主线任务分离开来,在开发自己的分支的时候不会影响主分支。 分支的好处: 同时推进多个功能开发…

CSS自适应分辨率 amfe-flexible 和 postcss-pxtorem:Webpack5 升级后相关插件和配置更新说明

前言 项目对应的 webpack5 版本如下: npm i webpack5.89.0 -D npm i webpack-cli5.1.4 -D升级插件 说明一下,我更喜欢固定版本号,这样随机bug会少很多,更可控~ npm i postcss-loader6.1.1 -D npm i postcss-pxtorem6.0.0 -D配…

Postman创建及删除workspace工作空间

文章目录 一、Postman创建workspace工作空间二、Postman删除workspace工作空间 一、Postman创建workspace工作空间 打开Postman 点击 Workspaces → Create Workspaces 如图所示操作 工作空间创建完成 二、Postman删除workspace工作空间 点击 Workspaces → 选择要删除…

Milvus数据一致性介绍及选择方法

1、Milvus 时钟机制 Milvus 通过时间戳水印来保障读链路的一致性,如下图所示,在往消息队列插入数据时, Milvus 不光会为这些插入记录打上时间戳,还会不间断地插入同步时间戳,以图中同步时间戳 syncTs1 为例&#xff0…