OS アーキテクチャの取得を自動化しようとしていますが、そうすると無効な名前空間エラーが発生します。
foreach($i in $hosts){
$ip = $i.name
Get-WmiObject -ComputerName $ip Win32_OperatingSystem
}
Get-WmiObject -ComputerName $ip Win32_OperatingSystem を取り、 $ip を正当な IP に置き換えると、完全に機能します。さらに、Get-WMIObject の前に Write-Host を追加して、実行されるコマンド全体を表示できるようにしました。Write-Host からの出力を実行したところ、コマンドは正常に完了しました。
エラー: Get-WmiObject : 無効な名前空間 行:4 文字:18 + Get-WmiObject <<<< -ComputerName $ip Win32_OperatingSystem + CategoryInfo : InvalidOperation: (:) [Get-WmiObject], ManagementException + FullyQualifiedErrorId : GetWMIManagementException,Microsoft. PowerShell.Commands.GetWmiObjectCommand
$hosts 変数は、2 つの noteProperty フィールドを持つ PSCustomObject です。1 番目は名前で、2 番目はユーザーです。name フィールドには、システムの IP アドレスが保持されます。