我在脚本中使用下面的代码,它应该匹配hosts.test中的“标题AHS - zarriot CBTS随机Linux服务器”,并在2行匹配字符串之后将t3文件的文本插入hosts.test。但这会引发一些错误。
sed -i.bak '/^title AHS - zarriot CBTS random Linux Servers$/ {N;N; r t3}' hosts.test
有人可以帮助我吗?
答案 0 :(得分:1)
这可能适合你(GNU sed):
sed -i.bak '/^title AHS - zarriot CBTS random Linux Servers$/!b;N;N;r t3' file
r t3
命令需要以换行符终止。替代方法:
sed -i.bak -e '/^title AHS - zarriot CBTS random Linux Servers$/{N;N;r t3' -e '}' file
使用-e
选项将命令分成两部分。或者使用Bash:
sed -i.bak $'/^title AHS - zarriot CBTS random Linux Servers$/{N;N;r t3\n}' file