如何使用PowerShell获取XML元素?
我有一个这样的XML文件如何使用PowerShell获取XML元素?,xml,powershell,object,element,Xml,Powershell,Object,Element,我有一个这样的XML文件 <Data> <family no="1309" description="date"> <desc name="rt1" code="10.010" /> <desc name="rt2" code="10.9" />
<Data>
<family no="1309" description="date">
<desc name="rt1" code="10.010" />
<desc name="rt2" code="10.9" />
<desc name="b2" code="17.4" />
<desc name="E1" code="12.15" />
<desc name="n3" code="2.7.1" />
</family>
<family no="2006" description="date">
<desc name="rt3" code="16450.010" />
<desc name="rt5" code="165460.9" />
<desc name="b7" code="1736577.4" />
<desc name="E8" code="175632.15" />
<desc name="n0" code="2735.7.1" />
</family>
</Data>
任何人都可以帮助我,谢谢你你可以使用并检索另一个属性:
$a = @"
<Data>
<family no="1309" description="date">
<desc name="rt1" code="10.010" />
<desc name="rt2" code="10.9" />
<desc name="b2" code="17.4" />
<desc name="E1" code="12.15" />
<desc name="n3" code="2.7.1" />
</family>
<family no="2006" description="date">
<desc name="rt3" code="16450.010" />
<desc name="rt5" code="165460.9" />
<desc name="b7" code="1736577.4" />
<desc name="E8" code="175632.15" />
<desc name="n0" code="2735.7.1" />
</family>
</Data>
"@
# Load XML as xml document
$b = [xml]$a
# Use Xpath to seatch the name
$c = Select-Xml -Xml $b -XPath "//Data/family/desc[@name='rt1']"
# Show the code
$c.Node.Attributes['code'].'#text'
非常感谢。谢谢!
$a = @"
<Data>
<family no="1309" description="date">
<desc name="rt1" code="10.010" />
<desc name="rt2" code="10.9" />
<desc name="b2" code="17.4" />
<desc name="E1" code="12.15" />
<desc name="n3" code="2.7.1" />
</family>
<family no="2006" description="date">
<desc name="rt3" code="16450.010" />
<desc name="rt5" code="165460.9" />
<desc name="b7" code="1736577.4" />
<desc name="E8" code="175632.15" />
<desc name="n0" code="2735.7.1" />
</family>
</Data>
"@
# Load XML as xml document
$b = [xml]$a
# Use Xpath to seatch the name
$c = Select-Xml -Xml $b -XPath "//Data/family/desc[@name='rt1']"
# Show the code
$c.Node.Attributes['code'].'#text'
$name = "rt1"
( Select-Xml -Xml $b -XPath "//*/desc[@name='$name']").Node.code