原文:vim字符串替换 - Linux文档专区-Chinaunix
例子:
:%s/yearning/sentry/g  # 把yearning替换成sentry 如果是特殊符号把/ 换成 # 
vi/vim 中可以使用 :s 命令来替换字符串。以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询。
替换
  :s/vivian/sky/ 替换当前行第一个 vivian 为 sky
  :s/vivian/sky/g 替换当前行所有 vivian 为 sky
  :n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
  :n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
  n 为数字,若 n 为 .,表示从当前行开始到最后一行
  :%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky

  :%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky    # 常用 要加 % 百分号才是全局

  可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
  :s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/
  :%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/
  * ************************************
  删除文本中的^M
  问题描述:对于换行,window下用回车换行(0A0D)来表示,linux下是回车(0A)来表示。这样,将window上的文件拷到unix上用时,总会有个^M.请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。
  · 使用命令:cat filename1 | tr -d “^V^M” >newfile;
  · 使用命令:sed -e “s/^V^M//” filename >outputfilename。需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必须要手工进行输入,而不是粘贴。
  · 在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:%s/^V^M//。
  · :%s/^M$//g
  如果上述方法无用,则正确的解决办法是:
  · tr -d "r" dest
  · tr -d "5" dest
  · strings A>B
  其它
  利用 :s 命令可以实现字符串的替换。具体的用法包括:
  :s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1
  :s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1
  :.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1
  :1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1
  :g/str1/s//str2/g 功能同上
  从上述替换命令可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索
  字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。

vim替换字符串命令详解相关推荐

  1. VIM查找和替换字符串命令详解(持续更新中...)

    vi/vim 中可以使用 :s 命令来替换字符串.该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询.    :s/vivian/sky/ 替换当前行第一个 vivian ...

  2. vim的marks命令详解

    前言: vim的marks命令指的是标记文本文件或者文本文件的某一列,从而实现快速跳转.那么,这个命令的实际意义在于提升文本编辑的效率,毕竟,如果有大量的文本文件需要编辑,那么,在各个文件之间的跳转是 ...

  3. ubuntu安装VIM教程与命令详解

    目录 1.VIM简介 2.ubuntu安装VIM 3.安装命令详解 3.1.sudo 3.2.apt-get && install 3.3.vim-gtk 4.VIM参数配置 1.VI ...

  4. sed命令详解与示例

    grep命令的查找功能,sed命令的流编辑功能和awk(现已发展成为一门编程语言)作为更强大的文本编辑命令,在Linux系统管理中,起着重要且全面的作用.而后来出现的perl编程语言(Practica ...

  5. linux中替换命令详解,linux中sed命令字符串替换的用法详解

    Linux系统中sed命令可以将字符串批量替换,省去了很多麻烦,下面由学习啦小编为大家整理了linux系统中sed命令字符串替换的用法详解,希望对大家有帮助! linux中sed命令字符串替换的用法详 ...

  6. grep命令详解(如何匹配多个字符串)(grep指令)(grep -q)

    文章目录 20221011 grep如何匹配多个标志? 20230412 grep -q(`Use grep -q instead of comparing output with [ -n .. ] ...

  7. cut\grep\awk\sed命令详解

    cut\grep\awk\sed命令详解 1.cut命令详解及实例 (1)作用:提取文件中指定的列 语法格式:cut  选项  文件名   (2)选项作用:      -d 分隔符     按照指定的 ...

  8. Linux常用命令详解(两万字超长文)

    Linux常用命令详解 作为一枚程序员,熟练掌握一些常见的linux命令是很有必要的,掌握这些命令能帮助我们更好地管理Linux系统,提高工作效率,并有效地解决各种问题,为了方便自己后续查阅以及帮助不 ...

  9. sed是linux命令吗,Linux12_ sed命令详解

    sed意为"流编辑器(stream editor)" 字符串筛选工具. 对一个文档中的行进行操作 和vi编辑很相似.可以查看vim使用命令详解 1 sed基本格式 第一种 sed ...

  10. 正则,grep命令详解

    正则表达式和grep.vim.awk.sed等的关系: 正则表达式是一种方法,相当于一种工艺,grep等命令相当于是一个具体的加工机器,机器在加工产品的时候,采用这种方法. 命令是怎么执行的: sel ...

最新文章

  1. c语言标量变量是什么,C语言中的结构和联合之间的区别
  2. Redis分布式快速入门
  3. 聚合天气--ajax 通过城市名取数据
  4. HandlerInterceptor 处理器拦截器的用法
  5. 深入浅出---unix多进程编程之wait()和waitpid()函数
  6. 使用arcgis修改行政区划图边界
  7. 系统发育树构建算法和软件
  8. os+rom+android+6.0+n9005,三星S8+官方韩版安卓9固件rom系统线刷升级包:G955NKSU3DSG5
  9. matlab运行.m文件的命令,Matlab:从命令行运行m文件
  10. u检验中的查u界值表_u检验和t检验
  11. 【论文笔记】ego_planner
  12. cf计算机丢失msvcp100,Win7丢失MSVCP100.dll导致程序无法启动怎们办
  13. Set和Map数据结构。
  14. 论文进入SCI、Ei等国际检索系统的意义(转贴)
  15. 短信系统实现原理(基于redis)
  16. smartforms设备类型CNSAPWIN不支持页格式ZXXX
  17. 孙正义从阿里巴巴董事会辞职,原因是什么?
  18. LLJ-300HS;LLJ-F(S)系列漏电继电器
  19. 第六课:ResNeXt学习
  20. 美国旅游签证归来(上海领馆)

热门文章

  1. CMOS版图课程第七讲--可靠性设计,视频截图节选
  2. 前端求职简历模板,一投即过!
  3. 论电子病历文本编辑器
  4. es like模糊匹配_Elastic search模糊匹配,精确匹配显示在前
  5. web项目 压力测试
  6. ubuntu 黑体_linux ubuntu 思源黑体安装
  7. 详解单例模式线程安全
  8. 学习java疯狂讲义笔记(连载)
  9. getshell工具下载批量ecshop4.0全版本通杀工具下载
  10. 三星sm-g7106com.android.mms,三星g7106官方原版固件rom系统刷机包_三星g7106线刷包