栗子1:添加一行,并保留空格

sed "/^[[:space:]]allow 192.168.40.28;/i\        allow 192.168.40.27;" test.txt

参数解析:

[[:space:]]:   表示匹配空格。
[[:space:]]*:  表示任意个空格。

栗子2:有时候sed只匹配第一行,并做修改(暂时没想到办法)

四、在匹配上后面添加一行,并保留空格

sed  -i  "/匹配的内容/a\[可能要保留的空格]添加的内容"  urfile
a:在匹配行后面添加
sed "/^[[:space:]]allow 192.168.40.28;/a\        allow 192.168.40.30;" test.txt
                                    注意:这里没有s/原/新/的方法,也就是没有s这个参数,并且最后没有/.2.通过sed实现在搜索到某个字符串之后,在下一行插入字符串。如果要在匹配行前面插入一行,把a命令改成i命令即可。新插入的行或者匹配行如果有特殊字符,记得转义。1.查看原文件中的内容。
a 代表在定位的后一行插入
sed '1i 添加内容' file  #这是在第一行添加字符串
sed '$i 添加内容' file  #这是在最后一行行前添加字符串
sed '$a添加内容' file  #这是在最后一行行后添加字符串
                                    Linux sed在某行前一行和后一行添加内容
linuxsed工具是十分强大的,能很容易的实现在某关键词的前一行或后一行增加内容。今天在批量修改tomcat的日志时就用到了该功能。
一、在某行的前一行或后一行添加内容
具休操作如下:
#匹配行前sed -i '/allow 361way.com/i\allow www.361way.com' the.conf.file
#匹配行...
                                    sed命令应用广泛,使用简单,是快速文本处理的利器。它其实没多少技巧,背诵、使用是最合适的学习渠道,属于硬技能。但它又很复杂,因为高级功能太多。本篇不去关注sed的高级功能,仅对常用的一些操作,进行说明。随着使用,你会发现它和vim的一些理念是想通的,正则表达式的语法也基本上一样,并没有多少学习成本。从个人视野和工作效率上来看,sed命令都是程序员必须掌握的一个重要工具。那些说可以现场g...