PowerShell点引用XML属性

PowerShell点引用XML属性,xml,powershell,attributes,Xml,Powershell,Attributes,给定一个这样的XML节点 <MachineLogFileName overwrite="[bool]"></MachineLogFileName> $validationNode = $validation.xml.SelectSingleNode("//Settings/$($node.name)") 当然,$node.name是'MachineLogFileName',是'overwrite'的变量$attribute.name,我希望能够获取该属性的值,但只能作

给定一个这样的XML节点

<MachineLogFileName overwrite="[bool]"></MachineLogFileName>
$validationNode = $validation.xml.SelectSingleNode("//Settings/$($node.name)")
当然,
$node.name
'MachineLogFileName'
,是
'overwrite'
的变量
$attribute.name
,我希望能够获取该属性的值,但只能作为属性。我可以使用
$validationNode。($attribute.name)
,但是如果有一个子节点名为
如果不是一个名为“覆盖”的属性,我最终会得到子节点的内部文本。所以在某种意义上,我想要类似于
$validationNode.Attributes($attribute.name)
的东西。这里似乎有一个集合,在本例中只有一个属性,但我似乎无法通过这种方式获得值。最终,这需要使用高度可变的属性和子节点名称,我可以循环使用所有属性,但我需要在IF-so中使用它,比如
$validationNode.attributes。($attribute.name)
将是理想的选择。似乎这应该是可能的,我只是错过了一个方面?我希望如此

我希望能够获取该属性的值,但只能作为属性。我可以使用
$validationNode。($attribute.name)
,但是如果有一个名为
的子节点,而不是名为“overwrite”的属性

使用:

$validationNode=$validation.xml.SelectSingleNode(“//Settings/$($node.name)”)
$attributeValue=$validationNode.GetAttribute($attribute.name)
请分享更详细的信息。