sed

sed可以对文本进行增删改查

格式

sed <option> [script] file1 file2....

script有两点重要:

(1)确定行

(2)确定动作

行可以这样确定:

sed '1,2a addadd' file
sed '3d' file
sed '/asm/d' file
sed '/asm/s/arm/x86' file

后面两个是: ‘/pattern/action’ 方式确定行,pattern 就是正则表达式。

action支持:

i     insert
a     append
d     delete
s     substitution
p     print

option支持

-i     将改变回写到文件
-n    不将改变内容打印到标志输出
-e    允许多个脚本命令被执行
-f     指定脚本文件  -f script-file
-r     使用扩展正则表达式
-s     如果sed多个文件,默认情况下,多个文件当成一个流处理,加-s,则分开处理,即确定行的操作会不同。

 

实际的例子:

HOSTARCH := $(shell uname -m | \
        sed -e s/i.86/i386/ \
            -e s/sun4u/sparc64/ \
            -e s/arm.*/arm/ \
            -e s/sa110/arm/ \
            -e s/powerpc/ppc/ \
            -e s/ppc64/ppc/ \
            -e s/macppc/ppc/)

 

posted on 2020-04-09 22:44  开心种树  阅读(222)  评论(0编辑  收藏  举报