powershell 提取两个 xml 标签之间的值并保存到 txt 文件
powershell to extract values between two xml tags and save to a txt file
在 PowerShell 中,我试图检索 2 个 XML 标记之间的所有值。
示例代码显示:
<Report name="result_many fail" summary="20" yes=19 no="1" finished=20>
所以我的 txt 文件应该是这样的:
姓名:result_many失败,总结20,是19,否1,完成20
$text = Get-Content C:\Path\To\File.xml
$text | Select-Xml -XPath '//Report[@finished]
>result.txt
但这行不通
有人可以给我提示吗?
示例中您的属性需要引号并且没有结束标记</Report>
无论如何,使用Select-Xml
捕获该节点的文本并将其输出到文本文件,你可以
('<Report name="result_many fail" summary="20" yes="19" no="1" finished="20">blablabla</Report>' |
Select-Xml -XPath '//Report[@finished]').Node.InnerText |
Set-Content -Path 'D:\Test\result.txt'
代替.InnerText
你也可以写成.'#text'
在 PowerShell 中,我试图检索 2 个 XML 标记之间的所有值。
示例代码显示:
<Report name="result_many fail" summary="20" yes=19 no="1" finished=20>
所以我的 txt 文件应该是这样的:
姓名:result_many失败,总结20,是19,否1,完成20
$text = Get-Content C:\Path\To\File.xml
$text | Select-Xml -XPath '//Report[@finished]
>result.txt
但这行不通
有人可以给我提示吗?
示例中您的属性需要引号并且没有结束标记</Report>
无论如何,使用Select-Xml
捕获该节点的文本并将其输出到文本文件,你可以
('<Report name="result_many fail" summary="20" yes="19" no="1" finished="20">blablabla</Report>' |
Select-Xml -XPath '//Report[@finished]').Node.InnerText |
Set-Content -Path 'D:\Test\result.txt'
代替.InnerText
你也可以写成.'#text'