Ci-dessous mon script pour aller chercher l'information. J'obtiens OSStatus et la disponibilité comme vierges dans la sortie. S'il vous plaît, aidez-moi à obtenir le résultat en utilisant "Get-VM | Select-Object -ExpandProperty NetworkAdapters" et indiquez mon erreur ici.
$clus = Read-Host 'Enter the Cluster Name'
$Nodes = Get-clusternode -Cluster $clus
foreach($Node in $Nodes)
{
$VMs = Get-VM | Select-Object -ExpandProperty NetworkAdapters | Select VMName, IPAddresses, State
foreach($VM in $VMs)
{
$results = [ordered]@{
'NodeName' = $Node;
'VMName' = $VM.VMName;
'IPaddress' = $VM.IPAddresses[0];
'Status' = $VM.State;
'AdapterStatus' = $VM.Status[0];
'OSStatus' = $VM.OSStatus;
'Uptime' = $VM.Uptime
}
$Output = New-Object -TypeName PSObject -Property $results
Write-Output $Output
}
}
J'aimerais également savoir si nous pouvons avoir une sortie de boucles foreach distinctes, la placer dans un tableau et la formater pour une sortie à la fin de la sortie.
Ci-dessous, la sortie que je reçois. Blanc pour OSStatus et Uptime.
NodeName : ABC
VMName : System1
IPaddress : 192.168.1.6
Status : Running
AdapterStatus : Degraded
OSStatus :
Uptime :
NodeName : ABC
VMName : System2
IPaddress : 192.168.1.7
Status : Running
AdapterStatus : Degraded
OSStatus :
Uptime :
NodeName : ABC
VMName : System3
IPaddress : 192.168.1.8
Status : Running
AdapterStatus : Degraded
OSStatus :
Uptime :