Benutzerdefinierte Ausgaben

Vorgabe von Eigenschaften und Konfigurationen:

  • Label: Spaltenüberschrift

  • Expression: beliebiger PowerShell-Ausdruck, der die Werte liefert; auch Berechnungen

  • Width: Spaltenbreite

  • Format: Formatierungsbefehl

Beispiel mit drei Spalten:

  • 5 Zeichen für die Prozessnummer in der ersten Spalte

  • 20 Zeichen für den Prozessnamen

  • 11 Zeichen für die Speichernutzung,

wobei die Angabe in Megabyte erfolgt und mit maximal einer Nachkommastelle

PS E:\_temp> Get-Process | sort workingset64 -desc |
>>> Format-Table @{Label="Nr"; Expression={$_.ID}; Width=5},
>>> @{Label="Name"; Expression={$_.Processname}; Width=20 },
>>> @{Label="Speicher MB"; Expression={$_.WorkingSet64 / 1MB}; Width=11; Format="{0:0.0}" }

   Nr Name                 Speicher MB
      -- ----                 -----------
       7280 firefox                    527,7
       2084 explorer                   322,4
        484 dwm                        316,9
       3456 powershell_ise             246,0
       2236 MsMpEng                    226,9
       1724 AcroRd32                   203,6
       1268 svchost                    119,8
       1252 powershell                 116,9
       8108 powershell                 100,6
        904 WINWORD                    100,6
       6484 iexplore                    76,7
       7640 iexplore                    75,0
   ...

Unterobjekt mit eigenen Methoden und Eigenschaften richtig ausgeben:

Get-Process | Format-Table ProcessName, { $_.TotalProcessorTime.Hours }

Get-Process
| Sort-Object CPU
| Format-Table ProcessName, { $_.TotalProcessorTime.MilliSeconds }