2018.1.16 6周2次课

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018.1.16 6周2次课相关的知识,希望对你有一定的参考价值。

六周第二次课(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次课的主要内容,如果未能解决你的问题,请参考以下文章

2018-1-16 6周2次课

2018.2.27 9周5次课

2018-1-6 4周5次课 zip压缩tar打包

2018-1-17 6周3次课

2018.1.6 4周5次课

2018.3.6 11周1次课