sed 行编辑器知识汇总

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sed 行编辑器知识汇总相关的知识,希望对你有一定的参考价值。

    sed 是一种行编辑器,一次处理一行内容,处理时把当前处理的行存储在一个临时缓冲区,称为“模式空间”(pattern space),接着用sed命令处理模式空间中的内容,处理完成后把模式空间中的内容打印到屏幕上,完成一行的编辑。
    注:默认情况下sed并不做原地修改,不会修改源文件

sed有两种使用方法

    sed [options] command file(s)    直接编写处理命令处理
    sed [options] -f scriptfile file(s)    使用预先编写好的sed脚本处理

    options:
        -n    静默模式,不输出内容到屏幕
        -e    多点编辑,一次编辑运行多个编辑命令
        -f    指定预先写好的sed‘脚本
        -r    使用扩展的正则表达式
        -i    修改源文件

    地址定界
        1、不给地址:对全文进行处理
        2、单地址:
            #:第#行
            /pattrern/:被此处模式匹配到的每一行
        3、地址范围:
            #,#
            #,+#
            /pat1/,/pat2/
            #,/pat1/
        4、~ 步进
            sed -n ‘1~2p‘ file     显示基数行
            sed -n ‘2~2p‘ file     显示偶数行

[[email protected] mage]# cat 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81     
[[email protected] mage]# sed -n -e ‘1p‘ -e ‘3,4p‘ -e ‘6,+1p‘ 99
1 X 1 = 1     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
[[email protected] mage]# sed -n -e ‘1p‘ -e ‘3,4p‘ -e ‘6,+1p‘ -e ‘/^9/p‘ 99
1 X 1 = 1     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81     
[[email protected] mage]# sed -i -n -e ‘1p‘ -e ‘3,4p‘ -e ‘6,+1p‘ -e ‘/^9/p‘ 99
[[email protected] mage]# cat 99
1 X 1 = 1     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81     
[[email protected] mage]# sed -n ‘1~2p‘ 99
1 X 1 = 1     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81     
[[email protected] mage]# sed -n ‘2~2p‘ 99
2 X 1 = 2     2 X 2 = 4     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64


    编辑命令:
        d:    删除
             cat -n /etc/passwd |sed ‘1,8d‘     删掉第1-8行
             sed ‘/^$/d‘ /etc/fstab         删掉空行
             sed ‘/^#/d‘ /etc/fstab            删掉#开头的行

[[email protected] mage]# sed ‘3,9d‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
[[email protected] mage]# sed -e ‘/^1/d‘ -e ‘/^3/d‘ -e ‘/^5/d‘ -e ‘/^7/d‘ -e ‘/^9/d‘ 99
2 X 1 = 2     2 X 2 = 4     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64

 

        p:    显示模式空间中的内容
            cat -n /etc/passwd |sed ‘1,8p‘         显示全文加匹配到的行
            cat -n /etc/passwd |sed -n ‘1,8p‘     仅显示匹配到的行
            sed -n ‘#p‘ 与 sed ‘#d‘             显示结果正好相反

[[email protected] mage]# sed -n ‘1,5p‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
[[email protected] mage]# sed ‘1,5d‘ 99
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81

 

       a:     \text    在指定行后面追加一行或多行文本(\n)
            sed -n ‘/^UUID/a \new line 1‘ /etc/fstab
            sed -n ‘/^UUID/a \new line 1\nnew line 2‘ /etc/fstab

[[email protected] mage]# sed  ‘/^5/a newline1‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
newline1
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81     
[[email protected] mage]# sed  ‘/^5/a newline1\nnewline2‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
newline1
newline2
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81


        i:     \text    在指定行前面插入一行或多行文本(\n)
            sed -n ‘/^UUID/i \new line 1‘ /etc/fstab
            sed -n ‘/^UUID/i \new line 1\nnew line 2‘ /etc/fstab

[[email protected] mage]# sed  ‘/^5/i newline1‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
newline1
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81     
[[email protected] mage]# sed  ‘/^5/i newline1\nnewline2‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
newline1
newline2
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81


        c:    \text     替换指定行尾一行或多行文本(\n)
            sed -n ‘/^UUID/c \new line 1‘ /etc/fstab
            sed -n ‘/^UUID/c \new line 1\nnew line 2‘ /etc/fstab

[[email protected] mage]# sed ‘/^5/c newline1‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
newline1
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81     
[[email protected] mage]# sed ‘/^5/c newline1\nnewline2‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
newline1
newline2
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81


        w:    保存模式空间中内容到指定文件
            sed -n  ‘/^UUID/w file‘ /etc/fstab

[[email protected] mage]# sed -n ‘2~2p‘ 99
2 X 1 = 2     2 X 2 = 4     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
[[email protected] mage]# sed -n ‘2~2w file‘ 99
[[email protected] mage]# cat file 
2 X 1 = 2     2 X 2 = 4     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64

 

       =:    显示模式空间中行的行号
            sed   ‘/^UUID/=‘ /etc/fstab

[[email protected]eISO mage]# sed -n ‘/^5/=‘ 99
5


        r:    读取文件到符合匹配条件的每一行后
            sed ‘6r file‘ /etc/fstab     读取file内容插入到fstab文件第6行后面

[[email protected] mage]# cat file 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
[[email protected] mage]# sed ‘^6r file‘ 99
sed: -e expression #1, char 1: unknown command: `^‘
[[email protected] mage]# sed ‘6r file‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81     
[[email protected] mage]# sed ‘/^6/r file‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81


        !:    对地址定界取反
            cat -n /etc/passwd |sed ‘1,8!d‘     删掉第1-8行以外的行

[[email protected] mage]# sed  ‘1~2d‘ 99
2 X 1 = 2     2 X 2 = 4     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
[[email protected] mage]# sed  ‘1~2!d‘ 99
1 X 1 = 1     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81


        s///:    替换,支持其他分隔符 [email protected]@@ s###
            替换标记:
            g:    行内全局替换
            i:    忽略字符大小写

[[email protected] ~]# sed -n ‘[email protected]@&[email protected]‘ /etc/passwd
root+++++++++++++:x:0:0:root+++++++++++++:/root+++++++++++++:/bin/bash
operator:x:11:0:operator:/root+++++++++++++:/sbin/nologin
ftp:x:14:50:FTP User:/var/ft+++++++++++++p:/sbin/nologin
[[email protected] mage]# sed ‘s/X/*/‘ 99
1 * 1 = 1     
2 * 1 = 2     2 X 2 = 4     
3 * 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 * 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
5 * 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
6 * 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 * 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 * 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 * 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81     
[[email protected] mage]# sed ‘s/X/*/g‘ 99
1 * 1 = 1     
2 * 1 = 2     2 * 2 = 4     
3 * 1 = 3     3 * 2 = 6     3 * 3 = 9     
4 * 1 = 4     4 * 2 = 8     4 * 3 = 12     4 * 4 = 16     
5 * 1 = 5     5 * 2 = 10     5 * 3 = 15     5 * 4 = 20     5 * 5 = 25     
6 * 1 = 6     6 * 2 = 12     6 * 3 = 18     6 * 4 = 24     6 * 5 = 30     6 * 6 = 36     
7 * 1 = 7     7 * 2 = 14     7 * 3 = 21     7 * 4 = 28     7 * 5 = 35     7 * 6 = 42     7 * 7 = 49     
8 * 1 = 8     8 * 2 = 16     8 * 3 = 24     8 * 4 = 32     8 * 5 = 40     8 * 6 = 48     8 * 7 = 56     8 * 8 = 64     
9 * 1 = 9     9 * 2 = 18     9 * 3 = 27     9 * 4 = 36     9 * 5 = 45     9 * 6 = 54     9 * 7 = 63     9 * 8 = 72     9 * 9 = 81     
[[email protected] mage]# sed ‘s/x/*/g‘ 99
1 X 1 = 1     
2 X 1 = 2     2 X 2 = 4     
3 X 1 = 3     3 X 2 = 6     3 X 3 = 9     
4 X 1 = 4     4 X 2 = 8     4 X 3 = 12     4 X 4 = 16     
5 X 1 = 5     5 X 2 = 10     5 X 3 = 15     5 X 4 = 20     5 X 5 = 25     
6 X 1 = 6     6 X 2 = 12     6 X 3 = 18     6 X 4 = 24     6 X 5 = 30     6 X 6 = 36     
7 X 1 = 7     7 X 2 = 14     7 X 3 = 21     7 X 4 = 28     7 X 5 = 35     7 X 6 = 42     7 X 7 = 49     
8 X 1 = 8     8 X 2 = 16     8 X 3 = 24     8 X 4 = 32     8 X 5 = 40     8 X 6 = 48     8 X 7 = 56     8 X 8 = 64     
9 X 1 = 9     9 X 2 = 18     9 X 3 = 27     9 X 4 = 36     9 X 5 = 45     9 X 6 = 54     9 X 7 = 63     9 X 8 = 72     9 X 9 = 81     
[[email protected] mage]# sed ‘s/x/*/gi‘ 99
1 * 1 = 1     
2 * 1 = 2     2 * 2 = 4     
3 * 1 = 3     3 * 2 = 6     3 * 3 = 9     
4 * 1 = 4     4 * 2 = 8     4 * 3 = 12     4 * 4 = 16     
5 * 1 = 5     5 * 2 = 10     5 * 3 = 15     5 * 4 = 20     5 * 5 = 25     
6 * 1 = 6     6 * 2 = 12     6 * 3 = 18     6 * 4 = 24     6 * 5 = 30     6 * 6 = 36     
7 * 1 = 7     7 * 2 = 14     7 * 3 = 21     7 * 4 = 28     7 * 5 = 35     7 * 6 = 42     7 * 7 = 49     
8 * 1 = 8     8 * 2 = 16     8 * 3 = 24     8 * 4 = 32     8 * 5 = 40     8 * 6 = 48     8 * 7 = 56     8 * 8 = 64     
9 * 1 = 9     9 * 2 = 18     9 * 3 = 27     9 * 4 = 36     9 * 5 = 45     9 * 6 = 54     9 * 7 = 63     9 * 8 = 72     9 * 9 = 81     
[[email protected] mage]# sed ‘s/x/*/i‘ 99
1 * 1 = 1     
2 * 1 = 2     2 X 2 = 4     
3 * 1 = 3&nbs

以上是关于sed 行编辑器知识汇总的主要内容,如果未能解决你的问题,请参考以下文章

sed的练习

打开高效文本编辑之门_调用Linux的sed命令

linux-基础知识-第20天

知识点小结~3

linux-基础知识-第12天

sed--行编辑器命令