Традиционный подход: итерируйте атрибуты и выводите их имена:
foreach ($configNode in $configNodes) {
foreach ($attr in $configNode.Attributes) {
$attr.Name
}
}
Подход PowerShell: в PowerShell 3.0+ вы можете использовать точечную запись в коллекциях для доступа к вложенным свойствам:
foreach ($configNode in $configNodes) {
$configNode.Attributes.Name
}
На самом деле вы можете пойти так далеко, как
$config.productSettings.productGroups.productGroup.Attributes.Name
, что приведет к всем именам атрибутов для всех <productGroup>
элементов, т.е. эквивалент XPath
/productSettings/productGroups/productGroup/@*/name()