我正在尝试用单独的文本文件的内容替换文本文件(具有未知数量的子元素的 XML 元素)中的多行。我已经设法让替换主要使用 perl 工作,但它在它替换的字符串之后插入了一个额外的空白行,我想摆脱它。有关显示 perl 命令以及输入和替换文件的代码,请参见下面的代码。
有人知道如何防止出现额外的空行吗?如有必要,我愿意使用除 perl 之外的其他工具。
==> cat test.xml
<root>
<values>
<value>1</value>
<value>2</value>
<value>3</value>
</values>
</root>
==> cat replace.xml
<values>
<value>4</value>
<value>5</value>
</values>
==> perl -i -p0e 's;<values>.*<\/values>;`cat replace.xml`;sge' test.xml
==> cat test.xml
<root>
<values>
<value>4</value>
<value>5</value>
</values>
</root>
==>