file.xml:
<dict>
<key>Name</key>
<string>eeee</string>
</dict>
<dict>
<key>Name</key>
<string>bbb</string>
</dict>
<dict>
<key>Name</key>
<string>ccc</string>
</dict>
<dict>
<key>Name</key>
<string>bbb</string>
</dict>
用 Sed 删除, 如果在<dict></dict>里找到 <string>bbb</string>, 就删除该段<dict></dict>所有内容.
如下:
<dict>
<key>Name</key>
<string>bbb</string>
</dict>
网上就找到这段, 但它不能判断 dict 中是否包含<string>bbb</string>. 如果包含在删除该节点(dict)
sed -i '/^<dict>/,/^<\/dict>$/d' /x.x