Sed附加线

awm*_*635 4 linux sed

sed是否有命令在匹配的行之后追加一行?我试着四处寻找,但结果有点混乱.

基本上我希望它匹配

#address=/doubleclick.net/127.0.0.1
Run Code Online (Sandbox Code Playgroud)

并在它下面添加一行

#address=/doubleclick.net/127.0.0.1

address=/anotherurl/ipaddress
Run Code Online (Sandbox Code Playgroud)

这可能吗?

kev*_*kev 10

您可以在a(append)命令中使用sed:

$ sed -i '/^#address=\/doubleclick.net\/127.0.0.1$/a\
> address=/anotherurl/ipaddress' file.txt
Run Code Online (Sandbox Code Playgroud)

或者您可以使用s(替换)命令:

$ sed -i 's@^#address=/doubleclick.net/127.0.0.1$@&\naddress=/anotherurl/ipaddress@' file.txt
Run Code Online (Sandbox Code Playgroud)

注意: $并且>是bash提示符.