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