marabunta
Goto Top

Powershell Hashtable to Übersichtliche Darstellung

Ich frage Remote diverse Rechner ab und speichere das Ergebnis aller Rechner in $LoggedOn, die Variable liefert allerdings jeder Rechner für sich und ich bündle das in $Computers
Etwas Pseudocode
$Computers=Invoke-Command -ComputerName $Computerliste {
#Blabla
$LoggedOn=@{"Computername" = "$Computer"; "Username" = "$Username"; "Status"="$Status"}  
}
$Computers


Liefert das Ergebnis:
Name                           Value
----                           -----                                                                                                                       
Computername                   Computer1
Username                       user1
Status                         Aktiv
Computername                   Computer3
Username                       user2
Status                         Aktiv
Computername                   Computer4
Username
Status
Computername                   Computer2
Username                       user3
Status                         Aktiv

Wüsste jemand wie ich das Übersichtlich darstelle und vor allem nach Computernamen sortieren kann?
Ideal wäre sowas:
Computer1: User1 - Aktiv
Computer2: User3 - Aktiv
Computer3: User2 - Aktiv
Computer4: -

Es wird manuell ausgeführt und soll einfach schnell zeigen welcher Rechner gerade frei ist.

Content-Key: 322588

Url: https://administrator.de/contentid/322588

Printed on: April 19, 2024 at 00:04 o'clock

Member: colinardo
Solution colinardo Dec 01, 2016 updated at 10:47:39 (UTC)
Goto Top
Hi,
mach aus der Hashtable ein Powershell-Object:

Ab PS3.0 die optimierte kurze Variante
[pscustomobject] @{"Computername" = $Computer; "Username" = $Username; "Status"=$Status
Mit PS2.0 Kompatibilität:
New-Object PSObject -Property @{"Computername" = $Computer; "Username" = $Username; "Status"=$Status
Hat zusätzlich den Vorteil das du den Inhalt bei Bedarf gleich an Export-CSV pipen kannst.

Grüße Uwe
Member: Marabunta
Marabunta Dec 01, 2016 at 10:52:36 (UTC)
Goto Top
Perfekt. Mit der Zeile ist es dann auch gut zu lesen
$Computers |select Computername, Username, Status | Sort-Object Computername |Format-Table -AutoSize