我的文件包含:
hello
test1
DocumentRoot /var/www/html/
test2
hey
现在我尝试在“world
”行下添加“DocumentRoot /var/www/html/
”一词
所以它看起来像这样:
hello
test1
DocumentRoot /var/www/html/
world
test2
hey
对我来说很难,因为上面的行包含“/
”
我试过这个,但它不起作用:
sed 's/DocumentRoot /var/#www/#html/#\ /DocumentRoot /var/#www/#html/#\nworld/' file
它给了我一个完全错误的输出
hallo
test1
var/var/www/html/
test2
hey
答案 0 :(得分:2)
将分隔符更改为斜杠以外的字符,并使用a
命令追加字符串:
sed '\#DocumentRoot /var/www/html/#a\
world' file
我在这里使用#
作为分隔符。在某些版本的sed中,你可以将所有这些放在同一行,但我写的方式更便携。