Я создаю PSObject в Powershell следующим образом:
$NetworkInfo = New-Object PSObject
$NetworkInfo | Add-Member -type NoteProperty -Name IPAddress -Value "10.10.8.11"
$NetworkInfo | Add-Member -type NoteProperty -Name SubnetMask -Value "255.255.255.0"
$NetworkInfo | Add-Member -type NoteProperty -Name Gateway -Value "10.10.8.254"
$NetworkInfo | Add-Member -type NoteProperty -Name Network -Value "10.10.8.0"
$NetworkInfo | Add-Member -type NoteProperty -Name DNS1 -Value "10.10.10.200"
$NetworkInfo | Add-Member -type NoteProperty -Name DNS2 -Value "10.10.10.201"
$NetworkInfo
Я хочу сделать конкретное действие для каждого NoteProperty в этом PSObject, но я не уверен, как это сделать. Например (хотя я знаю, что это неправильный способ сделать это) этот код:
ForEach ($noteProperty in $NetworkInfo) {
Write-Host $noteProperty
}
Только выводит весь объект в виде массива:
@{IPAddress=10.10.8.11; SubnetMask=255.255.255.0; Gateway=10.10.8.254; Network=10.10.8.0; DNS1=10.10.10.200; DNS2=10.10.10.201}
EDIT: каждый NoteProperty имеет тип переменной System.String - если это уместно.
Я создаю объект неправильно или просто не понимаю, как пройти через объект? Любая помощь ценится!:)