xmlstarlet:移除具有特定属性值的标记及其子项
我有以下xml:xmlstarlet:移除具有特定属性值的标记及其子项,xml,parsing,xmlstarlet,Xml,Parsing,Xmlstarlet,我有以下xml: <systemList> <system> ... </system> <system> <name>dreamcast</name> <fullname>Sega Dreamcast</fullname> <platform>dreamcast</platform> <theme>dreamcast
<systemList>
<system>
...
</system>
<system>
<name>dreamcast</name>
<fullname>Sega Dreamcast</fullname>
<platform>dreamcast</platform>
<theme>dreamcast</theme>
<emulators>
<emulator name="libretro">
<cores>
<core>stella</core>
</cores>
</emulator>
<emulator name="retrorun">
<cores>
<core default="true">flycast</core>
</cores>
</emulator>
</emulators>
</system>
</systemList>
但它似乎什么也没做,我在这里遗漏了什么?我认为这只是一个打字错误-尝试将
'dreamcast'
更改为'dreamcast'
;你在一个单引号中有一个单引号。你是对的,问题是那一个;)
<emulator name="retrorun">
xmlstarlet ed -d '/systemList/system[name='dreamcast']/emulators/emulator[@name='retrorun']' input.xml > output.xml