linux sed 命令详解

一、概述
    sed(Stream Editor) 是 Linux 上的一个流编辑器。它默认不编辑原文件,而是将文件读取到内存空间进行编辑然后输出。

二、命令格式
    sed [options] 'AddressCommand' file ...
        options
            -n 静默模式,不再默认显示内存空间中的内容
            -i 直接修改原文件
            -e SCRIPT 同时执行多个脚本
            -f /PATH/TO/SCRIPTS
                sed -f /path/to/scripts file
            -r 表示使用扩展正则表达式
        Address
            1.StartLine,EndLine
                如1,100
                $ 最后一行
            2./RegExp/
                如/^root/
            3./pattern1/,/pattern2/
                第一次被 pattern 匹配到的行开始,至第一次被 pattern2 匹配到的行结束
            4.LineNumber
                指定的行
            5.StartLine,+n
                从 StartLine 开始,向后的 n 行
        Command
            d:删除符合条件的行
            p:显示符合条件的行
            a \"string":在符合条件的行后面添加新行,内容为 string
            i
 \"string": 前面
            r FILE:将指定的文件的内容添加到符合条件的行处
            w FILE:将符合条件的行保存到指定文件中
            s/pattern/string/:查找并替换每行第一次被 pattern 匹配到的字符串
        修饰符(AddressCommand末尾)
            g:全局替换
            i:忽略大小写
            s///: s### s@@@
            &:引用模式匹配到的整个串
            \1 \2 ...:后向引用

            

你可能感兴趣的:(linux,Stream,sed,editor)