Format-List
Formatuje dane wyjściowe jako listę właściwości, w których każda właściwość jest wyświetlana w nowym wierszu.
Składnia
Format-List
[[-Property] <Object[]>]
[-GroupBy <Object>]
[-View <string>]
[-ShowError]
[-DisplayError]
[-Force]
[-Expand <string>]
[-InputObject <psobject>]
[<CommonParameters>]
Opis
Polecenie Format-List
cmdlet formatuje dane wyjściowe polecenia jako listę właściwości, w których każda właściwość jest wyświetlana w osobnym wierszu. Można użyć Format-List
do formatowania i wyświetlania wszystkich lub wybranych właściwości obiektu jako listy (Format-List -Property *
).
Ponieważ dla każdego elementu na liście jest dostępnych więcej miejsca niż w tabeli, program PowerShell wyświetla więcej właściwości obiektu na liście, a wartości właściwości są mniej prawdopodobne, aby zostać obcięte.
Przykłady
Przykład 1. Formatowanie usług komputerowych
Get-Service | Format-List
To polecenie formatuje informacje o usługach na komputerze jako liście. Domyślnie usługi są formatowane jako tabela. Polecenie Get-Service
cmdlet pobiera obiekty reprezentujące usługi na komputerze. Operator potoku (|
) przekazuje wyniki za pośrednictwem potoku do Format-List
elementu .
Format-List
Następnie polecenie formatuje informacje o usłudze na liście i wysyła je do domyślnego polecenia cmdlet wyjściowego do wyświetlenia.
Przykład 2. Formatowanie plików PS1XML
Te polecenia wyświetlają informacje o plikach PS1XML w katalogu programu PowerShell jako listę.
$A = Get-ChildItem $pshome\*.ps1xml
Format-List -InputObject $A
Pierwsze polecenie pobiera obiekty reprezentujące pliki i przechowuje je w zmiennej $A
.
Drugie polecenie służy Format-List
do formatowania informacji o obiektach przechowywanych w programie $A
. To polecenie używa parametru InputObject do przekazania zmiennej do Format-List
, która następnie wysyła sformatowane dane wyjściowe do domyślnego polecenia cmdlet wyjściowego do wyświetlenia.
Przykład 3. Formatowanie właściwości procesu według nazwy
To polecenie wyświetla nazwę, priorytet podstawowy i klasę priorytetu każdego procesu na komputerze.
Get-Process | Format-List -Property Name, BasePriority, PriorityClass
Używa Get-Process
on polecenia cmdlet do pobrania obiektu reprezentującego każdy proces. Operator potoku (|
) przekazuje obiekty procesu przez potok do elementu Format-List
. Format-List
formatuje procesy jako listę określonych właściwości. Nazwa parametru właściwości jest opcjonalna, więc można ją pominąć.
Przykład 4. Formatowanie wszystkich właściwości procesu
To polecenie wyświetla wszystkie właściwości procesu Winlogon.
Get-Process winlogon | Format-List -Property *
Używa polecenia cmdlet Get-Process do pobrania obiektu reprezentującego proces Winlogon. Operator potoku (|
) przekazuje obiekt procesu Winlogon za pośrednictwem potoku do .Format-List
Polecenie używa parametru Property , aby określić właściwości i właściwości *
, aby wskazać wszystkie właściwości.
Ponieważ nazwa parametru Property jest opcjonalna, można go pominąć i wpisać polecenie jako Format-List *
. Format-List
automatycznie wysyła wyniki do domyślnego polecenia cmdlet danych wyjściowych do wyświetlenia.
Przykład 5. Rozwiązywanie problemów z błędami formatu
W poniższych przykładach pokazano wyniki dodawania parametrów DisplayError lub ShowError z wyrażeniem.
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
Parametry
-DisplayError
Wskazuje, że to polecenie cmdlet wyświetla błędy w wierszu polecenia. Ten parametr jest rzadko używany, ale może być używany jako pomoc debugowania podczas formatowania wyrażeń w Format-List
poleceniu, a wyrażenia nie wydają się działać.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Expand
Określa sformatowany obiekt kolekcji, a także obiekty w kolekcji. Ten parametr jest przeznaczony do formatowania obiektów obsługujących interfejs System.Collections.ICollection . Domyślna wartość to EnumOnly
. Dopuszczalne wartości tego parametru to:
EnumOnly
. Wyświetla właściwości obiektów w kolekcji.CoreOnly
. Wyświetla właściwości obiektu kolekcji.Both
. Wyświetla właściwości obiektu kolekcji i właściwości obiektów w kolekcji.
Typ: | String |
Dopuszczalne wartości: | CoreOnly, EnumOnly, Both |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Force
Wskazuje, że to polecenie cmdlet wyświetla wszystkie informacje o błędzie. Użyj z parametrem DisplayError lub ShowError . Domyślnie, gdy obiekt błędu jest zapisywany w strumieniu błędu lub jest wyświetlany tylko niektóre informacje o błędzie.
Wymagane również podczas formatowania niektórych typów platformy .NET. Aby uzyskać więcej informacji, zobacz sekcję Uwagi .
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-GroupBy
Określa dane wyjściowe w grupach na podstawie właściwości udostępnionej lub wartości. Wprowadź wyrażenie lub właściwość danych wyjściowych.
Wartość parametru GroupBy może być nową właściwością obliczeniową. Właściwość obliczeniowa może być blokiem skryptu lub tabelą skrótów. Prawidłowe pary klucz-wartość to:
Name
(lubLabel
) -<string>
Expression
-<string>
lub<script block>
FormatString
-<string>
Aby uzyskać więcej informacji, zobacz about_Calculated_Properties.
Typ: | Object |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-InputObject
Określa obiekty, które mają być sformatowane. Wprowadź zmienną zawierającą obiekty lub wpisz polecenie lub wyrażenie, które pobiera obiekty.
Typ: | PSObject |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Property
Określa właściwości obiektu wyświetlane na ekranie i kolejność ich wyświetlania. Dozwolone są symbole wieloznaczne.
Jeśli pominiesz ten parametr, właściwości wyświetlane na ekranie zależą od wyświetlanego obiektu. Właściwość nazwy parametru jest opcjonalna. Nie można użyć parametrów Właściwości i Wyświetl w tym samym poleceniu.
Wartość parametru Property może być nową właściwością obliczeniową. Właściwość obliczeniowa może być blokiem skryptu lub tabelą skrótów. Prawidłowe pary klucz-wartość to:
Name
(lubLabel
) -<string>
Expression
-<string>
lub<script block>
FormatString
-<string>
Aby uzyskać więcej informacji, zobacz about_Calculated_Properties.
Typ: | Object[] |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | True |
-ShowError
Wskazuje, że polecenie cmdlet wysyła błędy za pośrednictwem potoku. Ten parametr jest rzadko używany, ale może być używany jako pomoc debugowania podczas formatowania wyrażeń w Format-List
poleceniu, a wyrażenia nie wydają się działać.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-View
Określa nazwę alternatywnego formatu listy lub widoku. Nie można użyć parametrów Właściwości i Wyświetl w tym samym poleceniu.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
Do tego polecenia cmdlet można przekazać dowolny obiekt.
Dane wyjściowe
Microsoft.PowerShell.Commands.Internal.Format
To polecenie cmdlet zwraca obiekty formatu reprezentujące listę.
Uwagi
Program PowerShell zawiera następujące aliasy dla programu Format-List
:
- Wszystkie platformy:
fl
Polecenia cmdlet formatu, takie jak Format-List
, rozmieścić dane, które mają być wyświetlane, ale nie są wyświetlane.
Dane są wyświetlane przez funkcje wyjściowe programu PowerShell oraz polecenia cmdlet zawierające Out
czasownik ( Out
polecenia cmdlet), takie jak Out-Host
lub Out-File
.
Jeśli nie używasz polecenia cmdlet formatu, program PowerShell stosuje ten domyślny format dla każdego wyświetlanego obiektu.
Parametr GroupBy zakłada, że obiekty są sortowane. Użyj Sort-Object
polecenia przed użyciem Format-List
, aby zgrupować obiekty.
Parametr Widok umożliwia określenie alternatywnego formatu tabeli. Możesz użyć widoków zdefiniowanych *.format.PS1XML
w plikach w katalogu programu PowerShell lub utworzyć własne widoki w nowych plikach PS1XML i użyć Update-FormatData
polecenia cmdlet , aby uwzględnić je w programie PowerShell.
Alternatywny widok parametru Widok musi używać formatu listy, w przeciwnym razie polecenie kończy się niepowodzeniem. Jeśli alternatywny widok jest tabelą, użyj polecenia Format-Table
. Jeśli widok alternatywny nie jest listą lub tabelą, użyj polecenia Format-Custom
.
Jeśli chcesz użyć parametru Format-List
Property , musisz uwzględnić parametr Force w dowolnym z następujących warunków:
Obiekty wejściowe są formatowane poza pasmem
ToString()
przy użyciu metody . Dotyczy[string]
to typów pierwotnych platformy .NET, które są nadzbiorem wbudowanych typów liczbowych, takich jak[int]
,[long]
i innych.Obiekty wejściowe nie mają właściwości publicznych.
Obiekty wejściowe są wystąpieniami typów otoki używanych przez program PowerShell dla strumieni wyjściowych innych niż strumień wyjściowy Powodzenie. Ma to zastosowanie tylko wtedy, gdy te typy otoki są wysyłane do strumienia wyjściowego Powodzenie, co wymaga przechwycenia ich za pośrednictwem typowych parametrów, takich jak ErrorVariable first lub przy użyciu przekierowania, takiego jak
*>&1
.