У меня возникли проблемы с попыткой вернуть список XML и определить, присутствует ли у каждого конкретный узел.Powershell v2.0 - запрос узлов XML
У нас есть список файлов Employee, которые либо имеют, либо не имеют определенного узла XML с именем Password. Если узел пароля присутствует в XML, то это новый сотрудник, иначе это будет обновление. В моей попытке сценария ниже, похоже, он возвращает только тот же результат, зная, что существуют вариации XML для тестирования.
<?xml version="1.0"?>
-<EnterpriseDocument CreationTimestamp="2016-07-18T09:44:39">
-<BusinessUnitList>
-<BusinessUnit id="4086">
-<User id="1234567" lastName="Sample" firstName="Sample" password="Password1234">
</User>
</BusinessUnit>
</BusinessUnitList>
$Path = gc 'c:\temp\importexport\*.xml'
Foreach ($xml in $Path) {
$xmldata = [xml]$xml
$Password = $XMLData.SelectSingleNode("//BusinessUnitList/BusinessUnit/User/Password")
If ($Password)
{Write-host "New Employee"}
Else
{write-host "Employee Update"}
}
Я попытался изменения и экспериментировал, но не могу показаться, чтобы получить смешанные результаты, которые я ищу. Что-то я здесь делаю неправильно?
В вашем XML, 'password' не является узлом, это атрибут. – Eris