一、基本语法

替换命令语法:

:[addr]s/源字符串/目标字符串/[option]

全局替换:

:%s/源字符串/目标字符串/g

参数说明:

  • [addr]——表示检索范围,省略时表示当前行。

    • "%":表示整个文件,同"1,$";
    • ".,$":从当前行到文件尾;
  • s:表示替换操作
  • [option]:表示操作类型
    • g:全局替换
    • c:表示进行确认
    • p:表示替换结果逐行显示(Ctrl+L恢复屏幕)
    • 省略option:默认仅对每行第一个匹配串进行替换
  • 如果在源字符串和目标字符串中有特殊字符,需要使用“\”转义

二、使用示例

1.常用场景

  • vi中的全局替换的更多相关文章

    1. vi中的批量替换

      举个例子啊: 将文件tihuan(假设此文本中字符a)中的所有字符a换成字符w,其命令为: 1.vi tihuan 2.按esc键 3.按shift+: 4.在:后输入    %s/a/w/g 就ok ...

    2. VI中的批量替换 (转载)

        1) 文件内全部替换:   :%s#abc#123#g (如文件内有#,可用/替换,:%s/abc/123/g)   --注:把abc替换成123   (或者: %s/str1/str2/g 用s ...

    3. 在vi中搜索字符串,替换字符串

      在vi中搜索一个字符串: 输入命令:"vi test.txt"用vi打开一个文本文件. 输入命令:"/spider"用ESC键进入命令模式,然后输入一个&quo ...

    4. vim中的批量替换

      VI中的批量替换   1) 文件内全部替换:   :%s#abc#123#g (如文件内有#,可用/替换,:%s/abc/123/g)     --注:把abc替换成123   (或者: %s/str ...

    5. vi全局替换

      http://blog.csdn.net/vindak/article/details/7830547 vi全局替换命令

    6. linux vi 中s 替换方法

      vi/vim 中可以使用 :s 命令来替换字符:s/vivian/sky/ 替换当前行第一个 vivian 为 sky :s/vivian/sky/g 替换当前行所有 vivian 为 sky :n, ...

    7. vi全局替换方法

      来自:http://blog.sina.com.cn/s/blog_736f1c59010136ry.html 1. 基本的替换 :s/vivian/sky/ 替换当前行第一个 vivian 为 sk ...

    8. js对象中动态读取属性值 动态属性值 js正则表达式全局替换

      $(document).ready(function(){ var exceptionMsg = '${exception.message }'; var exceptionstr = ''; //j ...

    9. vi中如何替换某字符成“回车”?

      vi中如何替换某字符成“回车”? 在 vi 中::s/,/^M/g (you need to type CTRL-V <CR> to get a ^M here)VIM - Vi IMpr ...

    随机推荐

    1. centos7系统配置记录SFTP操作日志

      1.修改ssh配置 [root@elk-node2 ~]# vim /etc/ssh/sshd_config 大概132行把下面这个句注释掉 #Subsystem       sftp    /usr ...

    2. android 错误处理思维随笔

      错误信息:An error occurred while preparing SDK package Android SDK Build-Tools 26.0.1 错误分析:大概率更新超时:小概率上次 ...

    3. shiro 获取请求头中的 rememberMe

      前言: 上一篇提到了, 将 sessionId 放到请求头中去, 那rememberMe是否也可以放到请求头中去呢. 其实不管是sessionId还是rememberMe, shiro都会默认往coo ...

    4. SpingBoot 属性加载

      属性加载顺序 配置属性加载的顺序 开发者工具 `Devtools` 全局配置参数: 单元测试上的 `@TestPropertySource` 注解指定的参数: 单元测试上的 `@SpringBootT ...

    5. 开源任务调度平台elastic-job-lite源码解析

      前段时间写过一遍文章<一文揭秘定时任务调度框架quartz>,有读者建议我再讲讲elastic-job这个任务调度框架,年末没有那么忙,就来学习一下elastic-job. 首先一点,el ...

    6. 开发-封闭原则(OCP)

      1.什么是“开放-封闭” 随着软件系统规模的不断增大,软件系统的维护和修改的复杂性不断提高,这种困境促使法国工程院士Bertrand Meyer在1998年提出了“开放-封闭”(Open-Close ...

    7. Python作用域详述

      作用域是指变量的生效范围,例如本地变量.全局变量描述的就是不同的生效范围. python的变量作用域的规则非常简单,可以说是所有语言中最直观.最容易理解的作用域. 在开始介绍作用域之前,先抛一个问题: ...

    8. 翻译:DECLARE HANDLER语句(已提交到MariaDB官方手册)

      本文为mariadb官方手册:DECLARE HANDLER的译文. 原文:https://mariadb.com/kb/en/library/declare-handler/我提交到MariaDB官 ...

    9. Apollo 7 — ConfigService 消息扫描设计实现

      目录 设计 代码实现 总结 1.设计 Apollo 为了减少依赖,将本来 MQ 的职责转移到了 Mysql 中.具体表现为 Mysql 中的 ReleaseMessage 表. 具体官方文档可见:发送 ...

    10. 【转载】IIS报错不是有效的Win32应用程序

      今天在IIS中部署ASP.NET网站后,访问网站报错,提示信息为:未能加载文件或程序集XXX.dll或它的某一个依赖项,不是有效的Win32应用程序(异常来至HRESULT:0x800700C1).通 ...