2
我想創建一個Powershell腳本,它可以自動解析XML,但只收集某些信息。Powershell XML解析
現在,我的腳本看起來與此類似。
[xml]$xml = Get-Content .\myxml.xml
$foo_sub_length = $xml.report.foos.foo.length - 1
$foo_looper = 0
$foo_looper_brackets = "[$foo_looper]"
if ($foo_sub_length -eq "") {$foo_looper_brackets = ""}
do {
$xml.report.foos.foo$foo_looper_brackets.bar
}
while ($foo_looper -le $foo_sub_length)
基本上,它需要經過並打印出所有的$ xml.report.foos.foo.bar值。當我運行此腳本時,我收到錯誤,
Unexpected token 'node_looper_brackets' in expression or statement.
At C:\Users\notarealuser\Desktop\xmlscript.ps1:10 char:55 #not reflective of the above script
+ CategoryInfo : ParserError: (foo_looper_brackets:String) [], ParseException
+ FullyQualifiedErrorId : UnexpectedToken
+ $xml.report.foos.foo$foo_looper_brackets <<<< .bar
爲何或如何我的循環不工作任何想法?
嗯,如何將嵌套信息工作的任何想法?例如,說doc/title/foo1/bar2/info和doc/title/foo2/bar1/info等中的doc/title/foo1/bar1/info和info中的信息... – Ondaje
嘗試使用xpath表達式,如'' // info''。無論它們碰巧在哪裏,都可以找到所有'info'節點。 –
所以,爲了澄清,我將能夠做doc/title // foo // bar // info? – Ondaje