繁体   English   中英

使用 shell 脚本删除特定的 xml 标记

[英]Remove the specific xml tag using shell script

我对此很陌生,但是我需要使用 shell 脚本从 xml 文件中删除特定元素。 该文件是这样的:

<b>
      <a>AB</a>
      <c>CD</c>
      <d>EF</d>
</b>
<b>
      <a>AB1</a>
      <c>CD2</c>
      <d>EF3</d>
</b>

运行脚本后,文件应如下所示:

<b>
      <a>AB</a>
      <c>CD</c>
      <d>EF</d>
</b>

我已经使用删除选项查看了 sed 但无法真正弄清楚确切的脚本。 任何帮助将不胜感激。 谢谢!

您可以使用 Power Shell 脚本:

using assembly System 
using assembly System.Xml.Linq 

$inputFilename = "c:\temp\test.xml"
$outputFilename = "c:\temp\test1.xml"
$xDoc = [System.Xml.Linq.XDocument]::Load($inputFilename)
$bs = $doc.Descendants("B")

foreach($b in $bs)
{
    b.Remove
}
$xDoc.Save($outputFilename)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM