码迷,mamicode.com
首页 > 其他好文 > 详细

2018.1.16 6周2次课

时间:2018-01-17 01:12:33      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:需要   编辑   实现   其他   查找   http   ecb   命令   gre   

六周第二次课(1月16日)

9.4/9.5 sed

9.4/9.5 sed

其实grep工具的功能还不够强大,它实现的只是查找功能,而不能把查找的内容替换。以前用vim操作文档的时候,可以查找也可以替换, 但只限于在文本内部操作,而不能输出到屏幕上。sed工具以及后面要介绍的awk工具就能把替换的文本输出到屏幕上,而且还有其他更丰富的功能。sed和awk都是流式编辑器,是针对文档的行来操作的。

  • sed  '/x/'p filename:匹配x字符

技术分享图片

  • sed  -n  '/x/'p  filename:无关字符x的行不显示。

技术分享图片

  • sed  -n  'n'p  filename:单引号里的n是一个数字,表示显示的第几行。

技术分享图片

  • 在grep中使用的特殊符号(如^、$、. 、*等)同样也能在sed中使用

技术分享图片

技术分享图片

  • 如果不想加脱义符,需要加-r

技术分享图片

技术分享图片

技术分享图片

技术分享图片

  • 指定一个行范围显示

技术分享图片

技术分享图片

技术分享图片

  • sed命令加上-e选项可以实现多个行为

技术分享图片

  • -Ip:不区分大小写

技术分享图片

  • sed命令加上d:删除指定行。参数d表示删除的动作,仅仅是在显示器屏幕上并不显示这些行而已,文档不受影响。

技术分享图片

  • sed命令加上-i:删除指定行.

技术分享图片

技术分享图片

  • 替换字符或字符串

参数s表示替换的动作,参数g表示全局替换,如果不加g则只替换本行出现的第一个,用户和vim的替换一样

技术分享图片

技术分享图片

技术分享图片

技术分享图片

  • ():小括号在sed中属于特殊符号,用()把想要替换的字符打包成了一个整体,替换时则写成类似\1、\2或\3的形式。

技术分享图片

上图(.*)是贪婪匹配,会一直匹配到最后一个:

  • 除了可以使用 / 作为分隔符外,我们还可以使用其他特殊符号作为分隔符,如#和@

技术分享图片

  • &:匹配需要替换的内容。(.*)表示一整行

技术分享图片

技术分享图片


2018.1.16 6周2次课

标签:需要   编辑   实现   其他   查找   http   ecb   命令   gre   

原文地址:http://blog.51cto.com/415326/2061720

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!