1. 基本的替换

: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

2. 可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/

:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/

3. 删除文本中的^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” < src >dest

tr -d “\015″ dest

strings A>B

4. 其它用法

利用 :s 命令可以实现字符串的替换。具体的用法包括:

:s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1

:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1

:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1

shell之vi替换字符串相关推荐

  1. vi替换字符串(zz)

         1. 基本的替换 :s/vivian/sky/ 替换当前行第一个 vivian 为 sky :s/vivian/sky/g 替换当前行所有 vivian 为 sky :n,$s/vivian ...

  2. 【linux系列】vi替换字符串

    1. 基本的替换 :s/vivian/sky/ 替换当前行第一个 vivian 为 sky :s/vivian/sky/g 替换当前行所有 vivian 为 sky :n,$s/vivian/sky/ ...

  3. linux系统vi替换命令,linux:vi 替换命令

    转自:http://www.cnblogs.com/afant/archive/2009/03/11/1408745.html :s/^.*$/\L&/100 ##将100行内的小写转换成大写 ...

  4. vim替换字符串带斜杠_Linux vi/vim最全使用指南

    > 请关注本头条号,每天坚持更新原创干货技术文章.> 如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习. 1. 前言 Linux下的文本编辑器有很多种, ...

  5. vi/vim 中可以使用 :s 命令来替换字符串。

    vi/vim 中可以使用 :s 命令来替换字符串.以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询. :s/vivian/s ...

  6. linux vi查找字符串查找字符串,vim查找字符串的方法_vim查找替换的方法

    vim是什么? Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性.VIM是自由软件. Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自 ...

  7. shell(bash)替换字符串大全

    shell(bash)替换字符串大全 1. 替换(只替换一个) 用varrB=${varA/str1/str2} $ var="AAAszip_BBB.zip";var2=${va ...

  8. linux 给文件替换字符串/替换内容/替换某行 (shell,sed)

    本文是要讲linux 不打开文档/文件的情况下,替换文本内容. 打开文档,在文档/文件内替换内容的,可以用vim,可参考这篇文章vim 替换文本 . 话题相关 #linux 文件替换字符串 #sed ...

  9. linux sed 正则提取字符串,Shell中使用grep、sed正则提取和替换字符串

    Linux中使用grep正则提取字符串 echo office365 | grep -P '\d+' -o find . -name "*.txt" | xargs grep -P ...

  10. linux shell 字符串替换字符,关于bash:在shell脚本中替换另一个字符串的一个子字符串...

    我有"我爱苏西并结婚",我想把"苏西"改成"萨拉". #!/bin/bash firstString="I love Suzi a ...

最新文章

  1. 在浏览器输入URL回车之后发生了什么
  2. PostgreSQL学习手册(PL/pgSQL过程语言)【转】
  3. MEDIATR 一个低调的中介者类库
  4. micrometer_具有InlfuxDB的Spring Boot和Micrometer第3部分:Servlet和JDBC
  5. 安卓模拟器不能上网时可尝试更改成谷歌DNS
  6. spring boot html乱码,Spring-boot 字符集设置 解决乱码方案
  7. jquery打造一款侧边弹出的垂直导航
  8. 硅谷女孩火了,更该让他们开始学编程 1
  9. html自动切换图片特效代码,js图片自动切换效果处理代码
  10. 【前端】日期正则表达式(转发)
  11. Consolidation Mappings
  12. 使用img标签能使用background-size:conver一样的效果
  13. 漫步者 lollipods 充电
  14. GitGitHub 笔记
  15. 【ansys workbench】在ansys2020版本的mechanical中怎么施加约束或载荷?结构约束和载荷?fixed support
  16. Docker启动MySql时Exited (1) 8 seconds ago或者Error response from daemon: Container xx is not running的解决方法
  17. 技术部门怎么年终考核最合理?
  18. 程序员摆地摊能接到活吗?码农地摊卖什么能挣到外快钱?
  19. Socket多人聊天MFC版
  20. Pyqt5和Scrapy开发可视化爬虫

热门文章

  1. idea中 Java xml注释缩进问题 解决方案
  2. openCV项目实战-信用卡数字识别PyCharm版(唐宇迪)
  3. h5网站模板_超全超实用的80个模板网站,我全部整理在这里了
  4. android xml设置roboto字体,Android设置Roboto字体用粗体,斜体,常规,…(类似于自定义字体系列)...
  5. [RK3288][Android6.0] USB UVC 协议简结
  6. 宝塔面板部署网易云api
  7. python 3.6 安装 win32 win32com模块
  8. 深信服桌面云取消聚合口后的影响
  9. 微信/qq消息-定时自动循环发送
  10. Power Integrations推出的全新CAPZero-3 X电容放电IC符合IEC60335标准