30分钟带你玩转正则表达式(3)

这几个参数不在进行演示了相信大家已经明白了grep的基本用法了,但是grep的参数选项可不止这一点点,如果想要掌握更多的参数,就要学会查看帮助--help再或者查看man手册

三、sed的用法:

sed是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为模式空间pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。

注意:虽然sed把处理的内容发送到了屏幕之上,但是文件本身的内容却并没有改变,如果要想改变最简单的方法就是使用参数【-i】即可。另外也可以重定向到其他文件之下。

sed的基本命令:

1)、替换:s命令

这是最为常用的命令

比如:

30分钟带你玩转正则表达式

 

为啥有一个people没有被替换掉呢?

那是因为sed 's/people/aaaaa/g' test.text没有加g

2) & 表示匹配的字符串

有时可能会想在匹配到的字符串周围或附近加上一些字符 .
 如: sed 's/abc/(abc)/' filename

30分钟带你玩转正则表达式

 

 该例子在找到的 abc 前后加上括号 .
 该例子还可以写成 sed 's/abc/(&)/' filename

30分钟带你玩转正则表达式

 

 下面是更复杂的例子 :

取得eno16777736网卡IP地址:

 

3)、删除行:d命令

从某个文件当中删除包含关键字符的所有行:

30分钟带你玩转正则表达式

/etc/passwd的内容显示并找印行号,同时将2~5删除

30分钟带你玩转正则表达式

 

不知道大家对正则表达式有没有认识和了解,今天就为大家带来这些,另外这些东西是看不会的,要多实操才可以帮助大家加深印象和理解的。如果有什么地方需要和本人交流请留言。

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/12625.html