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 cmdlet Format-List
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 cmdlet Get-Service
pobiera obiekty reprezentujące usługi na komputerze. Operator potoku (|
) przekazuje wyniki przez potok do Format-List
.
Następnie polecenie Format-List
formatuje informacje o usłudze jako listę i wysyła je do domyślnego cmdletu wyjściowego w celu 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 używa Format-List
do formatowania informacji o obiektach przechowywanych w $A
. To polecenie używa parametru InputObject, aby przekazać zmienną 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 on polecenia cmdlet Get-Process
, aby uzyskać obiekt reprezentujący każdy proces. Operator potoku (|
) przekazuje obiekty procesu przez potok do Format-List
.
Format-List
formatuje procesy jako listę określonych właściwości. Nazwa parametru dla 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 on polecenia cmdlet Get-Process do pobrania obiektu reprezentującego proces Winlogon. Operator rurociągu (|
) przekazuje obiekt procesu Winlogon przez potok do Format-List
. Polecenie używa parametru Property, aby określić właściwości, oraz *
, aby wskazać wszystkie właściwości.
Ponieważ nazwa parametru Property jest opcjonalna, można pominąć go i wpisać polecenie jako Format-List *
.
Format-List
automatycznie wysyła wyniki do domyślnego cmdlet danych wyjściowych w celu 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 poleceń. Ten parametr jest rzadko używany, ale może być używany jako pomoc w debugowaniu podczas formatowania wyrażeń w poleceniu Format-List
, jeżeli 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. Wartość domyślna 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 ten cmdlet wyświetla pełne informacje o błędach. Użyj parametru DisplayError lub ShowError. Domyślnie, gdy obiekt błędu jest zapisywany do strumienia błędów lub strumienia wyświetlania, wyświetlane są 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ę Notes.
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 wspólnej właściwości lub wartości. Wprowadź wyrażenie lub właściwość danych wyjściowych. Parametr GroupBy oczekuje sortowania obiektów. Przed użyciem Sort-Object
użyj polecenia cmdlet Format-List
, aby zgrupować obiekty.
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. Nazwa parametru właściwość jest opcjonalna. W tym samym poleceniu nie można użyć parametrów właściwości i View.
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 cmdlet wysyła błędy za pośrednictwem potoku. Ten parametr jest rzadko używany, ale może być używany jako pomoc w debugowaniu podczas formatowania wyrażeń w poleceniu Format-List
, jeżeli 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. W tym samym poleceniu nie można użyć parametrów właściwości i View.
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 Format-List
:
- Wszystkie platformy:
fl
Polecenia cmdlet dotyczące formatowania, takie jak Format-List
, rozmieszczają dane do wyświetlenia, lecz same ich nie wyświetlają.
Dane są wyświetlane za pomocą funkcji wyjściowych programu PowerShell oraz poleceń cmdlet zawierających czasownik Out
(czyli poleceń cmdlet Out
), takich jak Out-Host
lub Out-File
.
Jeśli nie używasz cmdletu formatu, PowerShell stosuje domyślny format dla każdego obiektu, który wyświetla.
Parametr View umożliwia określenie alternatywnego formatu tabeli. Możesz użyć widoków zdefiniowanych w plikach *.format.PS1XML
w katalogu programu PowerShell lub utworzyć własne widoki w nowych plikach PS1XML i użyć polecenia cmdlet Update-FormatData
, aby uwzględnić je w programie PowerShell.
Alternatywny widok dla parametru View musi używać formatu listy. W przeciwnym razie polecenie kończy się niepowodzeniem. Jeśli alternatywny widok jest tabelą, użyj Format-Table
. Jeśli widok alternatywny nie jest listą lub tabelą, użyj Format-Custom
.
Jeśli chcesz użyć
Obiekty wejściowe są formatowane poza pasmem przy użyciu metody
ToString()
. Dotyczy to typów pierwotnych[string]
i .NET, które są nadzbiorem wbudowanych typów liczbowych, takich jak[int]
,[long]
i inne.Obiekty wejściowe nie mają właściwości publicznych.
Obiekty wejściowe są wystąpieniami typów opakowań używanych przez program PowerShell dla strumieni wyjściowych innych niż strumień Sukcesu. Dotyczy to tylko sytuacji, gdy te typy opakowań są wysyłane do strumienia wyjściowego Success, co wymaga wcześniejszego przechwycenia ich poprzez typowe parametry, takie jak ErrorVariable, lub przy użyciu przekierowania, takiego jak
*>&1
.