shell之sed

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

$vim sed.txt
a b
c d
e  f

g  h
#1.将“boys”插入到sed.txt的第二行下,打印
$sed "2a boys" sed.txt 
a b
c d
boys
e f 

g h
$cat sed.txt
a b
c d
e f 

g h
#2.删除sed.txt中所有包含c的行
$sed "/c/d" sed.txt
a b
e f 

g h
#3.将sed.txt文件中c替换成haha,全局替换g
$sed "s/c/haha/g" sed.txt
a b
haha d
e f 

g h
#4.将sed.txt中第二行删除并将h替换为haha
$sed -e '2d' -e 's/h/haha/g' sed.txt
a b
e f 

g haha