使用此文件:
<foo>
</foo>
命令:
xmlstarlet edit --omit-decl \
--subnode "//foo" --type elem -n "bar" \
--insert "//bar[1]" --type attr -n "id" --value "bar1" \
--subnode "//foo" --type elem -n "bar" \
--insert "//bar[2]" --type attr -n "id" --value "bar2" file.xml
如果不想计算新元素,请使用
last()
:
xmlstarlet edit --omit-decl \
--subnode "//foo" --type elem -n "bar" \
--insert "//bar[last()]" --type attr -n "id" --value "bar1" \
--subnode "//foo" --type elem -n "bar" \
--insert "//bar[last()]" --type attr -n "id" --value "bar2" file.xml
两种情况下的输出:
<foo>
<bar id="bar1"/>
<bar id="bar2"/>
</foo>