美文网首页
shell之sed

shell之sed

作者: 一个人一匹马 | 来源:发表于2019-03-12 22:21 被阅读0次

    sed是一种流编辑器,它一次处理一行内容。
    处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”,
    接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。
    接着处理下一行,这样不断重复,直到文件末尾。
    文件内容并没有改变,除非你使用重定向存储输出。

    基本用法
    sed [选项参数] ‘command’  filename
    
    选项参数
    -e  直接在指令列模式上进行sed的动作编辑。
    
    命令功能
    a  新增,a的后面可以接字串,在下一行出现
    d  删除
    s  查找并替换
    
    案例实操

    数据准备

    touch sed.txt
    vim sed.txt
    dong shen
    guan zhen
    wo  wo
    lai  lai
    
    le  le
    

    将“he he”这个单词插入到sed.txt第二行下,打印。

    sed '2a he he' sed.txt
    
    dong shen
    guan zhen
    he he
    wo  wo
    lai  lai
    
    le  le
    
    cat sed.txt
    
    dong shen
    guan zhen
    wo  wo
    lai  lai
    
    le  le
    

    注意:文件并没有改变

    删除sed.txt文件所有包含wo的行

    sed '/wo/d' sed.txt
    
    dong shen
    guan zhen
    lai  lai
    
    le  le
    

    将sed.txt文件中wo替换为ni

    sed 's/wo/ni/g' sed.txt
    
    dong shen
    guan zhen
    ni  ni
    lai  lai
    
    le  le
    

    注意:‘g’表示global,全部替换

    将sed.txt文件中的第二行删除并将wo替换为ni

    sed -e '2d' -e 's/wo/ni/g' sed.txt
    
    dong shen
    ni  ni
    lai  lai
    
    le  le

    相关文章

      网友评论

          本文标题:shell之sed

          本文链接:https://www.haomeiwen.com/subject/kmwopqtx.html