1
我有一個使用xmlstarlet
使用這個編輯XML文件的腳本:XML - 在XML文件中查找值
sudo xmlstarlet ed -L --omit-decl \
-s '//configuration' -t elem -n "property" -v '' \
-s '//configuration/property[last()]' -t elem -n "name" -v "this.is.a.node" \
-s '//configuration/property[last()]' -t elem -n "value" -v "value.for.above.node" \
-s '//configuration' -t elem -n "property" -v '' \
-s '//configuration/property[last()]' -t elem -n "name" -v "this.is.another.node" \
-s '//configuration/property[last()]' -t elem -n "value" -v "value.for.second" \
/path/to/file
導致此:
<configuration>
....
....
....
<property>
<name>this.is.a.node</name>
<value>value.for.above.node</value>
</property>
<property>
<name>this.is.another.node</name>
<value>value.for.second</value>
</property>
</configuration>
然而問題是,如果腳本運行不止一次,我會再次添加上述塊。我想避免這種情況,但我不知道如何去做。我無法找到的文檔上的任何支持的條件語句
的作品!非常感謝 – Beginner