首页 > 其他 > 详细

关于sed的使用方法

时间:2016-02-24 15:55:11      阅读:259      评论:0      收藏:0      [点我收藏+]

    sed是linux命令三剑客之一,是stream editor的缩写,含义是流编辑器的缩写。

    它擅长取行,替换,过滤。这个和awk有点类似,但是awk是取列,但是sed是取行。

    用法:sed -n ‘/过滤的内容/处理的命令/‘  文件名

    -n 是取消sed的默认输出。

    -p 是打印的意思。

    -i 改变文件的内容。

    -r 果不用r参数就要在正则表达式里使用很多的\来进行强制转换,如果使用r了就可以直接写正则表达式,而不用写那么多\了

    = 可以代表行号。


    sed替换,应用很广泛。

    s是指常用的查找并替换,用一个字符串替换成另一个。

    g是与s联合起来使用,表示对当前行全局匹配替换(与下一个g意义不同),如果不加上g就只是替换第一列,不会全局替换。

    #是分隔符,可以用其他符号替换。

    -i 是替换并修改。  

    格式为:sed ‘s###g’

    例子:sed ‘s#oldboy#oldgirl#g‘ test.txt 但是仅仅修改的是输出的内容,文件实体没有做修改。

          sed -i ‘s#oldboy#oldgirl#g‘ test.txt 加上-i就可以改变内容了

          find /root/data/ -type f -name "test.txt"|xargs sed ‘s#oldboy#oldgirl#g‘ 这个例子就是用find和sed替换结合起来一起用的范例,

          使用sed命令来取出ifconfig内的ip地址:

          ifconfig eth0|sed -nr ‘s#^.*addr:(.*)  B.*$#\1#gp‘


关于sed的使用方法

原文:http://zhengzhong.blog.51cto.com/3042358/1744541

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!