有什么方法可以将数据附加到UNIX中的.xml文件吗?

时间:2019-07-18 20:21:09

标签: xml unix sed append

我有一个包含以下数据的XML文件:

<Loggers>
<Root level="WARN">
        <AppenderRef ref="rolling" />
</Root>

<Logger name="com.windows.indexing.EntityQqlQuery" level="info"/>
<Logger name="com.windows.portal.module.questionnaire.object.campaign.helper.CampaignHelper" level="info"/>
<Logger name="com.windows.portal.application.module.searching.DetectionInnerHitSearchQuery" level="info"/>
<Logger name="com.windows.portal.application.module.business.processor.DynamicProcessor" level="ERROR"/>
<Logger name="com.windows.platform.persistence.hibernate.mapping.BasicResultTransformer" level="ERROR"/>
</Loggers>

我要在文件中</Loggers>之前添加以下行:

<Logger name="org.hibernate.SQL" level="debug"/>

此外,在插入此行之后也应保存文件。有什么办法可以实现?

1 个答案:

答案 0 :(得分:1)

最简单(可能不是最好)的解决方案

sed -i .bak '/<\/Loggers>/ i \
<Logger name="org.hibernate.SQL" level="debug"/>\
' filename

这将在每次出现行之前插入一行。