Я хочу использовать xmlstartlet в задаче Bash в DevOps Azure для редактирования приведенного ниже XML.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ProxyEndpoint name="default">
<PostFlow name="PostFlow">
<Request/>
<Response/>
</PostFlow>
Я хочу сделать этот код ниже.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ProxyEndpoint name="default">
<PostFlow name="PostFlow">
<Request>
<Step>
<Name>FC-SpikeArrest</Name>
</Step>
<Step>
<Name>FC-JWT</Name>
</Step>
</Request>
<Response/>
</PostFlow>
Я использовал приведенную ниже команду XML и могу добавить один набор тегов Step и Name с помощью FC-SpikeArrest, но не могу добавить теги FC-JWT.
xmlstarlet edit --omit-decl \
-s '/ProxyEndpoint/PostFlow/Request' -t elem -n "Step" \
-s '/ProxyEndpoint/PostFlow/Request/Step' -t elem -n "Name" -v "FC-SpikeArrest" ./default.xml >temp.xml
Что здесь не так?
xmlstarlet edit --omit-decl \
-s '/ProxyEndpoint/PostFlow/Request' -t elem -n "Step" \
-s '/ProxyEndpoint/PostFlow/Request/Step' -t elem -n "Name" -v "FC-SpikeArrest" ./default.xml >temp.xml
mv temp.xml default1.xml
xmlstarlet edit --omit-decl \
-s '/ProxyEndpoint/PostFlow/Request' -t elem -n "Step" \
-s '/ProxyEndpoint/PostFlow/Request/Step' -t elem -n "Name" -v "FC-JWT"./default1.xml >temp1.xml
mv temp1.xml default.xml