在日常项目开发中,如果经常在linux服务器上写脚本或者直接用vim进行业务开发的会遇到替换文本的情况,会使用vim的文本替换指令。参考一些专业网站的一些总结,将一些常用的vim替换指令记一下,希望对大家有帮助:

1.  替换当前行中的内容:    :s/from/to/    (s即substitude)

:s/from/to/    :  将当前行中的第一个from,替换成to。如果当前行含有多个

from,则只会替换其中的第一个。

:s/from/to/g   :将当前行中的所有from都替换成to。

:s/from/to/gc  :将当前行中的所有from都替换成to,但是每一次替换之前都

会询问请求用户确认此操作。

注意:这里的from和to都可以是任何字符串,或者是正则表达式。

2.  替换某一行的内容::33s/from/to/g

:.s/from/to/g   :  在当前行进行替换操作。

:33s/from/to/g :  在第33行进行替换操作。

:$s/from/to/g   :  在最后一行进行替换操作。

3.  替换某些行的内容: :10,20s/from/to/g

:10,20s/from/to/g   :  对第10行到第20行的内容进行替换。

:1,$s/from/to/g    :  对第一行到最后一行的内容进行替换(即全部文本)。

:1,.s/from/to/g     :  对第一行到当前行的内容进行替换。

:.,$s/from/to/g     :  对当前行到最后一行的内容进行替换。

:'a,'bs/from/to/g   :  对标记a和b之间的行(含a和b所在的行)进行替换。

其中a和b是之前用m命令所做的标记。

4.  替换所有行的内容:      :%s/from/to/g

:%s/from/to/g   :  对所有行的内容进行替换。

5.  替换命令的完整形式:    :[range]s/from/to/[flags]

5.1 s/from/to/

把from指定的字符串替换成to指定的字符串,from可以是正则表达式。

5.2 [range]

有以下一些表示方法:

不写range   :  默认为光标所在的行。

.  :  光标所在的行。

1  :  第一行。

$  :  最后一行。

n  :  第n行。

'a :  标记a所在的行(之前要使用ma做过标记)。

.+1 :  当前光标所在行的下面一行。

$-1 :  倒数第二行。(这里说明我们可以对某一行加减某个数值来

取得相对的行)。

n,m :  第n~m行。

1,$  :  第1行 到 最后一行。

1,.  :  第1行 到 当前行。

.,$  :  当前行 到 最后一行。

'a,'b  :  标记a所在的行 到标记b所在的行。

%  :  所有行(与 1,$ 等价)。

?chapter?   :  从当前位置向上搜索,找到的第一个chapter所在的行。(

其中chapter可以是任何字符串或者正则表达式。

/chapter/   :  从当前位置向下搜索,找到的第一个chapter所在的行。(

其中chapter可以是任何字符串或者正则表达式。

注意,上面的所有用于range的表示方法都可以通过 +、- 操作来设置相对偏

移量。

5.3 一些参数说明

无 :只对指定范围内的第一个匹配项进行替换。

g  : 对指定范围内的所有匹配项进行替换。

c  : 在替换前请求用户确认。

e  : 忽略执行过程中的错误。

注意:上面的所有flags都可以组合起来使用,比如 gc 表示对指定范围内的

所有匹配项进行替换,并且在每一次替换之前都会请用户确认。

vim 替换文本指令相关推荐

  1. vim替换字符串带斜杠_VI中的查找和替换

    本文见介绍linux vi命令替换的使用. vi/vim 中可以使用 :s 命令来替换字符串.以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(linux vi命令真是强大啊,还有很多需要学 ...

  2. VIM妙用及linux使用技巧(包括vim插件管理器、指令与键盘映射、打开多个文件、奇偶删除行、vim替换等)

    前言 vim 是个非常高效.非常好用的工具,很多人一旦开始使用 Vim 之后就再也无法自拔.然而, Vim 仍然有其自身缺陷,对于普通用户来说,很难在入门的时候就体会到Vim的所谓高效性,同时,为了展 ...

  3. centos7 vim查找_如何在 Vim/Vi 中快速查找和替换文本内容

    Vim 是 Vi 多模式命令行编辑器的加强版,通常默认的Unix或Linux系统中都默认自带Vi命令编辑器.当然,为了更好的体验,如果系统默认没有安装Vim,建议安装Vim. 通过本文的讲解,你将学会 ...

  4. Linux vim 文本替换 %s/原文/替换文本/g

    语法 ESC:%s/origanl/new/g %s 表示替换文本. origan 表示原文 new 表示新的内容 /g 表示全文替换,如果仅替换第一个则不需要/g 需要注意如果要替换的内容中包含特殊 ...

  5. Linux APT VIM 的一些指令

    APT APT下载工具,可以实现软件自动下载.配置.安装二进制或源码功能. APT采用客户端/服务器模式. sudo apt-get update 更新软件 sudo apt-get check 检查 ...

  6. linux vim编辑文本是 m,Linux编辑器之VIM

    VIM是Linux功能最为强大的编辑器,它是由Unix下传统的文本编辑器VI发展而来的,VI M- Vi IMproved,VI的增强版,有彩色和高亮等特性,VIM和VI的区别可参看vi_diff.t ...

  7. php tr 用法,Linux_Linux系统中tr命令删除和替换文本字符的基本用法,通过使用 tr,您可以非常容易 - phpStudy...

    Linux系统中tr命令删除和替换文本字符的基本用法 通过使用 tr,您可以非常容易地实现 sed 的许多最基本功能.您可以将 tr 看作为 sed 的(极其)简化的变体:它可以用一个字符来替换另一个 ...

  8. Vim入门-常用指令

    更多在vim在线手册 Vim基本操作 1.1 Vim中的六种基本模式 1.1.1 Vim模式介绍 Vim具有6种基本模式和5种派生模式,我们这里只简单介绍下6种基本模式: · 普通模式(Normal ...

  9. Linux下使用Vim粘贴文本错乱问题解决

    Linux下使用Vim粘贴文本错乱问题解决 参考文章: (1)Linux下使用Vim粘贴文本错乱问题解决 (2)https://www.cnblogs.com/wangxiaobei2019/p/12 ...

最新文章

  1. Handler、Looper与MessageQueue源码分析
  2. 名人尿炕被人发现后怎么办?
  3. 【设计模式】接口隔离原则
  4. mysql中的字典项是啥_常见数据库设计(1)——字典数据
  5. ElementTree中的getchildren and getiterator
  6. 【CSON原创】HTML5字体动态粒子效果发布
  7. c 调用openoffice word转pdf_批量 Word 转 PDF 方法
  8. IdentityServer(14)- 通过EntityFramework Core持久化配置和操作数据
  9. 27. Element nodeType 属性
  10. python--Django从创建一个项目说起
  11. Dubbo源码解析-Dubbo协议解析
  12. srs信道估计_SRS 上行信道质量测量
  13. 邮箱邮件安全问题有哪些?如何做邮件安全宣传?
  14. 52单片机定时器0-2实现1ms定时
  15. ios15.6RC-15.7.1系统降级iOS14,适用于checkm8机型
  16. python中bytes的用法_Python bytes类型及用法详解
  17. ZOJ4105 Abbreviation
  18. c++之getopt函数的使用
  19. 四年的女友......
  20. CentOS7+运行/停止Java后台程序,问题处理

热门文章

  1. 大数据概述:传统数据与大数据的区别
  2. 微信小程序——剪贴板 的使用
  3. 高手入门STM32总结+学习步骤
  4. Taro——taro安装及taro创建项目相关命令
  5. hp服务器系统安装xp糸统,惠普笔记本怎么安装XPghost版系统教程
  6. matlab 函数,matlab 语法1
  7. 单片机只会调库和复制别人的代码是什么水平?
  8. 【转】人脸识别图像库
  9. webgl 第三人称相机
  10. JS通过 身份证号码 获取 出生年月日 和 性别