Я пытаюсь автоматизировать получение архитектуры ОС, и когда это происходит, я получаю сообщение об ошибке недопустимого пространства имен.
foreach($i in $hosts){
$ip = $i.name
Get-WmiObject -ComputerName $ip Win32_OperatingSystem
}
Если я возьму Get-WmiObject -ComputerName $ ip Win32_OperatingSystem и заменю $ ip на законный IP-адрес, он будет работать отлично. Я даже добавил Write-Host в начало Get-WMIObject, чтобы он отображал всю команду, которая будет запущена. Я запустил вывод Write-Host, и команда успешно завершилась.
Ошибка: Get-WmiObject: Недопустимое пространство имен В строке: 4 символа: 18 + Get-WmiObject ‹**** -ComputerName $ ip Win32_OperatingSystem + CategoryInfo: InvalidOperation: (:) [Get-WmiObject], ManagementException + FullyQualifiedErrorId: GetWMIManagementException, Microsoft. PowerShell.Commands.GetWmiObjectCommand
Переменная $ hosts - это объект PSCustomObject с двумя полями noteProperty. Первый - это имя, а второй - пользователь. Поле имени содержит IP-адрес системы.