Format-List
Formatiert die Ausgabe als eine Liste der Eigenschaften, in der jede Eigenschaft in einer neuen Zeile angezeigt wird.
Syntax
Format-List
[[-Property] <Object[]>]
[-GroupBy <Object>]
[-View <string>]
[-ShowError]
[-DisplayError]
[-Force]
[-Expand <string>]
[-InputObject <psobject>]
[<CommonParameters>]
Beschreibung
Das Format-List
Cmdlet formatiert die Ausgabe eines Befehls als Liste von Eigenschaften, in denen jede Eigenschaft in einer separaten Zeile angezeigt wird. Sie können zum Formatieren und Anzeigen aller oder ausgewählten Eigenschaften eines Objekts als Liste (Format-List -Property *
) verwendenFormat-List
.
Da für jedes Element in einer Liste mehr Platz verfügbar ist als in einer Tabelle, zeigt PowerShell mehr Eigenschaften des Objekts in der Liste an, und die Eigenschaftswerte sind weniger wahrscheinlich abgeschnitten.
Beispiele
Beispiel 1: Formatieren von Computerdiensten
Get-Service | Format-List
Dieser Befehl formatiert Informationen zu Diensten auf dem Computer als Liste. Standardmäßig sind die Dienste als Tabelle formatiert. Das Get-Service
Cmdlet ruft Objekte ab, die die Dienste auf dem Computer darstellen. Der Pipelineoperator (|
) übergibt die Ergebnisse an die Pipeline.Format-List
Anschließend formatiert der Format-List
Befehl die Dienstinformationen in einer Liste und sendet sie zur Anzeige an das Standardausgabe-Cmdlet.
Beispiel 2: Formatieren von PS1XML-Dateien
Diese Befehle zeigen Informationen zu den PS1XML-Dateien im PowerShell-Verzeichnis als Liste an.
$A = Get-ChildItem $pshome\*.ps1xml
Format-List -InputObject $A
Der erste Befehl ruft die Objekte ab, die die Dateien darstellen, und speichert sie in der $A
Variablen.
Der zweite Befehl verwendet Format-List
zum Formatieren von Informationen zu Objekten, die in $A
. Dieser Befehl verwendet den InputObject-Parameter , um die Variable an Format-List
, die dann die formatierte Ausgabe an das Standardausgabe-Cmdlet für die Anzeige sendet.
Beispiel 3: Formatieren von Prozesseigenschaften anhand des Namens
Dieser Befehl zeigt Name, Basispriorität und Prioritätsklasse für jeden Prozess auf dem Computer an.
Get-Process | Format-List -Property Name, BasePriority, PriorityClass
Es verwendet das Get-Process
Cmdlet, um ein Objekt abzurufen, das jeden Prozess darstellt. Der Pipelineoperator (|
) übergibt die Prozessobjekte an die Pipeline Format-List
. Format-List
formatiert die Prozesse als Liste der angegebenen Eigenschaften. Der Name des Property-Parameters ist optional, sodass Sie ihn weglassen können.
Beispiel 4: Formatieren aller Eigenschaften für einen Prozess
Mit diesem Befehl werden alle Eigenschaften des Winlogon-Prozesses angezeigt.
Get-Process winlogon | Format-List -Property *
Er verwendet das Get-Process-Cmdlet zum Abrufen eines Objekts, das den Winlogon-Prozess darstellt. Der Pipelineoperator (|
) übergibt das Winlogon-Prozessobjekt über die Pipeline an Format-List
. Der Befehl verwendet den Parameter Property , um die Eigenschaften anzugeben und alle *
Eigenschaften anzugeben.
Da der Name des Property-Parameters optional ist, können Sie ihn weglassen und den Befehl eingeben als Format-List *
. Format-List
sendet die Ergebnisse automatisch an das Standardausgabe-Cmdlet für die Anzeige.
Beispiel 5: Behandeln von Formatfehlern
Die folgenden Beispiele zeigen die Ergebnisse des Hinzufügens der DisplayError - oder ShowError-Parameter mit einem Ausdruck.
PC /> Get-Date | Format-List DayOfWeek,{ $_ / $null } -DisplayError
DayOfWeek : Friday
$_ / $null : #ERR
PC /> Get-Date | Format-List DayOfWeek,{ $_ / $null } -ShowError
DayOfWeek : Friday
$_ / $null :
Failed to evaluate expression " $_ / $null ".
+ CategoryInfo : InvalidArgument: (12/21/2018 7:59:23 AM:PSObject) [], RuntimeException
+ FullyQualifiedErrorId : PSPropertyExpressionError
Parameter
-DisplayError
Gibt an, dass dieses Cmdlet Fehler in der Befehlszeile anzeigt. Dieser Parameter wird selten verwendet, kann aber als Debugginghilfe verwendet werden, wenn Sie Ausdrücke in einem Format-List
Befehl formatieren, und die Ausdrücke scheinen nicht zu funktionieren.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Expand
Gibt das formatierte Auflistungsobjekt sowie die Objekte in der Auflistung an. Dieser Parameter wurde entwickelt, um Objekte zu formatieren, die die System.Collections.ICollection-Schnittstelle unterstützen. Der Standardwert ist EnumOnly
. Zulässige Werte für diesen Parameter:
EnumOnly
. Zeigt die Eigenschaften der Objekte in der Auflistung an.CoreOnly
. Zeigt die Eigenschaften des Auflistungsobjekts an.Both
. Zeigt die Eigenschaften des Auflistungsobjekts und die Eigenschaften von Objekten in der Auflistung an.
Typ: | String |
Zulässige Werte: | CoreOnly, EnumOnly, Both |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Force
Gibt an, dass dieses Cmdlet alle Fehlerinformationen anzeigt. Wird mit dem Parameter DisplayError oder ShowError verwendet. Wenn ein Fehlerobjekt standardmäßig in den Fehler- oder Anzeigedatenstrom geschrieben wird, werden nur einige Fehlerinformationen angezeigt.
Außerdem erforderlich beim Formatieren bestimmter .NET-Typen. Weitere Informationen finden Sie im Abschnitt Hinweise.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-GroupBy
Gibt die Ausgabe in Gruppen basierend auf einer freigegebenen Eigenschaft oder einem freigegebenen Wert an. Geben Sie einen Ausdruck oder eine Eigenschaft der Ausgabe ein.
Der Wert des GroupBy-Parameters kann eine neue berechnete Eigenschaft sein. Die berechnete Eigenschaft kann ein Skriptblock oder eine Hashtabelle sein. Gültige Schlüsselwertpaare sind:
Name
(oderLabel
) -<string>
Expression
-<string>
oder<script block>
FormatString
-<string>
Weitere Informationen finden Sie unter about_Calculated_Properties.
Typ: | Object |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-InputObject
Gibt die zu formatierenden Objekte an. Geben Sie eine Variable ein, die die Objekte enthält, oder geben Sie einen Befehl oder einen Ausdruck ein, durch den die Objekte abgerufen werden.
Typ: | PSObject |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Property
Gibt die in der Anzeige angezeigten Objekteigenschaften und die Reihenfolge an, in der sie angezeigt werden. Platzhalter sind zulässig.
Wenn Sie diesen Parameter weglassen, hängen die in der Anzeige dargestellten Eigenschaften von dem angezeigten Objekt ab. Der Parametername -Eigenschaft ist optional. Sie können die Parameter "Property" und "View" nicht im selben Befehl verwenden.
Der Wert des Property-Parameters kann eine neue berechnete Eigenschaft sein. Die berechnete Eigenschaft kann ein Skriptblock oder eine Hashtabelle sein. Gültige Schlüsselwertpaare sind:
Name
(oderLabel
) -<string>
Expression
-<string>
oder<script block>
FormatString
-<string>
Weitere Informationen finden Sie unter about_Calculated_Properties.
Typ: | Object[] |
Position: | 0 |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | True |
-ShowError
Gibt an, dass das Cmdlet Fehler über die Pipeline sendet. Dieser Parameter wird selten verwendet, kann aber als Debugginghilfe verwendet werden, wenn Sie Ausdrücke in einem Format-List
Befehl formatieren, und die Ausdrücke scheinen nicht zu funktionieren.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-View
Gibt den Namen eines alternativen Listenformats oder einer alternativen Ansicht an. Sie können die Parameter "Property" und "View" nicht im selben Befehl verwenden.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
Sie können jedes Objekt an dieses Cmdlet weiterleiten.
Ausgaben
Microsoft.PowerShell.Commands.Internal.Format
Dieses Cmdlet gibt die Formatobjekte zurück, die die Liste darstellen.
Hinweise
Windows PowerShell enthält die folgenden Aliase für Format-List
:
fl
Die Format-Cmdlets, z Format-List
. B. , ordnen die anzuzeigenden Daten an, zeigen sie jedoch nicht an.
Die Daten werden von den Ausgabefeatures von PowerShell und von den Cmdlets angezeigt, die das Out
Verb (die Out
Cmdlets) enthalten, z Out-Host
. B. oder Out-File
.
Wenn Sie kein Format-Cmdlet verwenden, wendet PowerShell dieses Standardformat für jedes angezeigte Objekt an.
Der Parameter GroupBy geht davon aus, dass die Objekte sortiert sind. Verwenden Sie Sort-Object
vor der Verwendung Format-List
zum Gruppieren der Objekte.
Mit dem Parameter View können Sie ein alternatives Format für die Tabelle angeben. Sie können die in den *.format.PS1XML
Dateien im PowerShell-Verzeichnis definierten Ansichten verwenden, oder Sie können eigene Ansichten in neuen PS1XML-Dateien erstellen und das Update-FormatData
Cmdlet verwenden, um sie in PowerShell einzuschließen.
Die alternative Ansicht für den Parameter "View " muss das Listenformat verwenden, andernfalls schlägt der Befehl fehl. Wenn es sich bei der alternativen Ansicht um eine Tabelle handelt, verwenden Sie Format-Table
. Wenn es sich bei der alternativen Ansicht nicht um eine Liste oder eine Tabelle handelt, verwenden Sie Format-Custom
.
Wenn Sie den Parameter Property verwenden Format-List
möchten, müssen Sie den Parameter Force unter einer der folgenden Bedingungen einschließen:
Die Eingabeobjekte werden mithilfe der
ToString()
Methode außerhalb des Bandes formatiert. Dies gilt für[string]
.NET-Grundtypen, die eine Obermenge der integrierten numerischen Typen sind, z[int]
. B. ,[long]
und andere.Die Eingabeobjekte weisen keine öffentlichen Eigenschaften auf.
Die Eingabeobjekte sind Instanzen der Wrappertypen, die PowerShell für andere Ausgabedatenströme als den Erfolgsausgabedatenstrom verwendet. Dies gilt nur, wenn diese Wrappertypen an den Erfolgsausgabedatenstrom gesendet werden, was erfordert, dass sie entweder über allgemeine Parameter wie ErrorVariable zuerst erfasst oder eine Umleitung verwendet wird, z
*>&1
. B. .