Der Befehl Format-Table
in PowerShell zeigt Objekte im Wesentlichen ähnlich wie Microsoft Excel-Tabellen an. Microsoft Excel bietet eine Funktion zur bedingten Formatierung, mit der Kalkulationstabellen-Generatoren das Anzeigeformat einer Zelle basierend auf dem Wert des Zellinhalts ändern können.
Es wäre wirklich großartig, wenn ein PowerShell-Benutzer mit dem Befehl Format-Table
bedingte Formatierungsregeln zu Objekteigenschaften hinzufügen könnte. Angenommen, Sie haben ein Objekt mit einer Status
Eigenschaft. Diese Eigenschaft könnte als Green
wenn ihr Wert Success
oder Red
wenn der Eigenschaftswert Failed
.
Name Status
---- ------
Step 1 Failed (Red)
Step 2 Success (Green)
Sie können beispielsweise wie folgt einen benutzerdefinierten Eigenschaftsspezifizierer im Befehl Format-Table
hinzufügen:
Get-SomeObjects | Format-Table -Property Name, @{ Name = 'Status'; Color = 'Green'; Value = '^Success$' }
In PowerShell haben wir heute bereits eine ähnliche Syntax zum Erstellen von "berechneten Eigenschaften". Wir könnten eine ähnliche Syntax nutzen, um farbige Ausdrücke in Datentabellen zu erstellen. Diese Funktion wäre nützlich, um PowerShell-basierte Dashboards zu erstellen und Daten auf nützlichere Weise in der Konsole darzustellen.
Beifall,
Trevor Sullivan
Definitiv eine zukünftige Verbesserung, aber ich stimme zu, dass dies großartig wäre.
Dito für Format-Custom
, Format-List
und Format-Wide
Für jeden, der dies heute möchte, hat Ahmad Adel Gad eine Lösung, Write-PSObject
, im Script Center von TechNet angeboten. https://gallery.technet.microsoft.com/scriptcenter/Format-Table-Colors-in-e0a4beac
Zur bedingten Formatierung siehe Beispiel 16B.01: Write-PSObject $servers -MatchMethod Exact -Column * -Value $false -ValueForeColor Red;
Die in diesem CmdLet verfügbaren Optionen sind wirklich gut durchdacht und könnten daher auch eine gute Inspirationsquelle für diese Verbesserungsanfrage sein.
Hilfreichster Kommentar
Dito für
Format-Custom
,Format-List
undFormat-Wide