gpt4 book ai didi

powershell - 使用变量获取XML节点子级

转载 作者:行者123 更新时间:2023-12-03 01:29:46 25 4
gpt4 key购买 nike

给定以下文件:

<environments>
<dev>
<property1>23</property1>
<property2>blue</property2>
<property3>apple</property3>
</dev>
<prod>
<property1>27</property1>
<property2>red</property2>
<property3>orange</property3>
</prod>
</environments>

和以下代码:
$environmentsFile = [System.Xml.XmlDocument](Get-Content "environments.xml");
$envs = $environmentsFile.environments;

$envName = "prod"

我将如何访问“刺”子并遍历它们?我已经在使用 ForEach ($env in $envs.ChildNodes) {}遍历环境了,我知道我可以做 $envs.prod
我尝试了这个:
$test = $envs.SelectNodes("//$envName")
ForEach ($ele in $test) {
Write-Host $ele.value
}

但是它什么也没输出。检查发现 $test似乎有一个包含我想要的所有节点的节点,因此我尝试了 $test[0],但也没有用。

最佳答案

我做错了几件事。此功能可根据需要运行:

$test = $envs.SelectNodes("//$envName")[0]
ForEach ($ele in $test.ChildNodes) {
Write-Host "$($ele.Name): $($ele.InnerText)"
}

关于powershell - 使用变量获取XML节点子级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59412142/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com