我有以下两个文件test.txt
和test1.txt.
我想将test.txt
的数据更新到test1.txt
下的abc.com
,但是,首先它必须删除现有数据,以使最终输出在输出文件部分
test1.txt
的test.txt
10.100.4.10
10.100.4.11
10.100.4.12
test1.txt的
[abc.com]
10.100.44.10
10.100.44.11
[xyz.com]
10.100.55.10
10.100.55.11
[等]
输出文件
test1.txt的
[abc.com]
10.100.4.10
10.100.4.11
10.100.4.12
[xyz.com]
10.100.55.10
10.100.55.11
答案 0 :(得分:0)
如果您事先知道地址abc.com
并且条目由空行分隔,则使用以下sed命令。第一个删除abc.com和第一个空白行之间的行,第二个删除你想要的文本来自test1.txt。
$ sed '/^\[abc\.com\]/,/^$/{/^\[abc\.com\]/!{/^$/!d}}' test.txt | sed '/^\[abc.com\]/r test1.txt'
[abc.com]
10.100.4.10
10.100.4.11
10.100.4.12
[xyz.com]
10.100.55.10
10.100.55.11