【发布时间】:2019-01-09 19:59:25
【问题描述】:
我正在尝试用 input.xml 中的 lookup 替换值 test。该脚本正在执行而没有任何错误,但它没有替换该值。
sed -i '/<Filter>/,/<\/Filter>/s/test/lookup/' input.xml > input_1.xml
下面是我的 input.xml 文件:
<NikuDataBus
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="./src/webroot/WEB-INF/xog/xsd/nikuxog_entity.xsd">
<Header version="14.2" action="read" objectType="contentPack" externalSource="NIKU"/>
<LookupQuery>
<Filter name="code" criteria="EQUALS">test</Filter>
</LookupQuery>
</NikuDataBus>
【问题讨论】:
-
请点击edit并将示例输入添加到问题中。添加示例后,选择它们并使用
{}按钮或ctrl+k格式化数据以便更好地查看...另外,使用 xmlstarlet 之类的解析器而不是 sed 来编辑 xml 数据 -
你能帮我用 xmlstarlet 示例来编辑 xml。我是 shell 脚本新手
标签: xml shell sed xmlstarlet