当前位置 博文首页 > 文章内容

    sed替换

    作者: 栏目:未分类 时间:2020-07-27 11:02:31

    本站于2023年9月4日。收到“大连君*****咨询有限公司”通知
    说我们IIS7站长博客,有一篇博文用了他们的图片。
    要求我们给他们一张图片6000元。要不然法院告我们

    为避免不必要的麻烦,IIS7站长博客,全站内容图片下架、并积极应诉
    博文内容全部不再显示,请需要相关资讯的站长朋友到必应搜索。谢谢!

    另祝:版权碰瓷诈骗团伙,早日弃暗投明。

    相关新闻:借版权之名、行诈骗之实,周某因犯诈骗罪被判处有期徒刑十一年六个月

    叹!百花齐放的时代,渐行渐远!



    sed
    sed是一种非交互式的流编辑器,可动态编辑文件。vim是打开文件后和用户进行互动操作的,sed是非互动的,它处理的对象是文件的数据流。sed的工作模式是,对每一行数据,若符合样式,就执行指定的操作。
    sed工具的语法如下:

    sed '样式命令' 文件
    1
    意思是,样式匹配成功后就执行指定的命令。它不会更改文件的内容,而是读取文件之后,经过编辑,然后把结果显示到标准输出上。如果想存储执行结果,就得自行将输出转向到指定的其他文件中。
    1. sed ‘1,4d’ file
    意思:把第一行到第四行之间的数据删除,剩下的显示出来。d是sed的删除命令。
    2. sed ‘/La/d’ file
    意思:把含有La的行删除,剩下的显示出来。//表示搜索。
    3. sed ‘/[0-9]{3}/d’ filename
    意思:把含有连续3个数字的行删除。
    4. sed ‘/^$/d’
    意思:删除空白行。
    5. sed ‘/La/!d’ file
    意思:把不含有La的行删除,!表示不匹配则执行命令。
    6. sed -n ‘/La/p’ file
    意思:p是显示命令。把匹配的行显示出来。
    7. sed ‘s/La/Oo/g’ file
    意思:s是替换命令,将La替换成Oo,g表示全局替换。

    单文件替换
    sed ‘s/test/zcx/g’ ./test1.dat > result1.dat
    意思:替换test1.dat文件中的”test”为”zcx”,将结果输出到result1.dat

    多文件替换
    grep “test” -rl ./* | xargs sed -i ‘s/test/zhaochaoxing/g’
    意思:grep搜索含有字符串”test”的文件,然后对每个文件执行sed命令。xargs存在的意义是避免因grep到的文件过多处理不了时造成溢出。sed -i 表示就地处理,将结果存回原文件。
    ————————————————
    版权声明:本文为CSDN博主「simon-zhao」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/u010902721/java/article/details/45980255