Format-Table
Formatuje dane wyjściowe jako tabelę.
Składnia
Default (domyślnie)
Format-Table
[[-Property] <Object[]>]
[-AutoSize]
[-HideTableHeaders]
[-Wrap]
[-GroupBy <Object>]
[-View <string>]
[-ShowError]
[-DisplayError]
[-Force]
[-Expand <string>]
[-InputObject <psobject>]
[<CommonParameters>]
Opis
Polecenie cmdlet Format-Table formatuje dane wyjściowe polecenia jako tabelę z wybranymi właściwościami obiektu w każdej kolumnie. Typ obiektu określa domyślny układ i właściwości wyświetlane w każdej kolumnie, ale można użyć parametru Property, aby wybrać właściwości, które chcesz zobaczyć.
Możesz również użyć tabeli skrótów, aby dodać właściwości obliczeniowe do obiektu przed jego wyświetleniem i określić nagłówki kolumn w tabeli. Aby dodać właściwość obliczeniową, użyj parametru właściwości
Przykłady
Przykład 1. Formatowanie hosta programu PowerShell
To polecenie wyświetla informacje o programie hosta dla programu PowerShell w tabeli. Domyślnie są one formatowane na liście.
Get-Host | Format-Table -AutoSize
Polecenie cmdlet Get-Host pobiera obiekty reprezentujące hosta. Operator potoku (|) przekazuje obiekt do polecenia cmdlet Format-Table. Polecenie cmdlet Format-Table formatuje obiekty w tabeli. Parametr AutoSize dostosowuje szerokość kolumny, aby zminimalizować obcinanie.
Przykład 2. Formatowanie procesów według parametru BasePriority
To polecenie wyświetla procesy na komputerze w grupach z tym samym priorytetem podstawowym.
Get-Process | Sort-Object -Property basepriority | Format-Table -GroupBy basepriority -Wrap
Polecenie cmdlet Get-Process pobiera obiekty reprezentujące każdy proces na komputerze. Operator potoku (|) przekazuje obiekt do polecenia cmdlet Sort-Object, które sortuje obiekty w kolejności od ich priorytetu podstawowego.
Inny operator potoku przekazuje wyniki do polecenia cmdlet Format-Table. Parametr GroupBy rozmieszcza dane dotyczące procesów w grupy na podstawie wartości właściwości BasePriority. Parametr Zawijanie gwarantuje, że dane nie są obcinane.
Przykład 3. Formatowanie procesów według daty rozpoczęcia
Get-Process | Sort-Object starttime | Format-Table -View starttime
To polecenie wyświetla informacje o procesach na komputerze w grupie na podstawie daty rozpoczęcia procesu. Używa on polecenia cmdlet Get-Process do pobierania obiektów reprezentujących procesy na komputerze. Operator potoku (|) wysyła dane wyjściowe Get-Process do polecenia cmdlet Sort-Object, które sortuje je na podstawie właściwości StartTime. Inny operator potoku wysyła posortowane wyniki do Format-Table.
Parametr
Plik
Przykład 4. Formatowanie usług
Get-Service | Format-Table -Property Name, DependentServices
To polecenie wyświetla wszystkie usługi na komputerze w tabeli z dwiema kolumnami, Name i DependentServices. Polecenie cmdlet Get-Service pobiera wszystkie usługi na komputerze. Operator potoku (|) wysyła wyniki do polecenia cmdlet Format-Table, które formatuje dane wyjściowe w tabeli.
Parametr Property określa właściwości, które są wyświetlane w tabeli jako kolumny. Nazwa parametru właściwości
Name i DependentServices to tylko dwie właściwości obiektów usługi. Aby wyświetlić wszystkie właściwości, wpisz Get-Service | Get-Member -MemberType Properties.
Przykład 5. Formatowanie procesu i obliczanie czasu działania
To polecenie pokazuje, jak używać właściwości obliczeniowej w tabeli.
Get-Process Notepad | Format-Table ProcessName,
@{Label="TotalRunningTime"; Expression={(Get-Date) - $_.StartTime}}
Polecenie wyświetla tabelę z nazwą procesu i łącznym czasem wykonywania wszystkich procesów Notatnika na komputerze lokalnym. Łączny czas wykonywania jest obliczany przez odjęcie czasu rozpoczęcia każdego procesu od bieżącego czasu.
Polecenie używa polecenia cmdlet Get-Process, aby pobrać wszystkie procesy o nazwie Notatnik na komputerze lokalnym.
Operator potoku (|) wysyła wyniki do Format-Table, która wyświetla tabelę z dwiema kolumnami: ProcessName, standardową właściwością procesów i TotalRunningTime, właściwością obliczeniową.
Właściwość totalRunningTime Get-Date, które pobiera bieżącą datę i godzinę.
Przykład 6. Formatowanie procesów Notatnika
Te polecenia są podobne do poprzedniego polecenia, z tą różnicą, że te polecenia używają polecenia cmdlet Get-WmiObject.
$Processes = Get-WmiObject -ComputerName "Server01" -Class win32_process -Filter "name='notepad.exe'"
$Processes | Format-Table ProcessName, @{ Label = "Total Running Time"; Expression={(Get-Date) - $_.ConvertToDateTime($_.CreationDate)}}
Pierwsze polecenie używa polecenia cmdlet Get-WmiObject w celu pobrania wystąpień klasy Win32_Process usługi WMI, która opisuje wszystkie procesy na komputerze Server01 o nazwie Notepad.exe.
Polecenie przechowuje informacje o procesie w zmiennej $Processes.
Drugie polecenie używa operatora potoku (|) do wysyłania informacji o procesie w zmiennej $Processes do polecenia cmdlet Format-Table, które wyświetla ProcessName i nową właściwość obliczeniową.
Polecenie przypisuje nazwę nowej właściwości obliczeniowej "Total Running Time" do klucza Label. Blok skryptu przypisany do klucza Expression oblicza, jak długo proces został uruchomiony, odejmując datę utworzenia procesu od bieżącej daty. Polecenie cmdlet Get-Date pobiera bieżącą datę. Metoda ConvertToDateTime konwertuje właściwość CreationDate obiektu Win32_Process z obiektu CIM_DATETIME WMI na obiekt CIM_DATETIME platformy .NET DateTime, który można porównać z danymi wyjściowymi Get-Date. Następnie przekonwertowana data utworzenia jest odejmowana od bieżącej daty. Wynikiem jest wartość łącznego czasu działania.
Przykład 7. 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-Table DayOfWeek,{ $_ / $null } -DisplayError
DayOfWeek $_ / $null
--------- ------------
Wednesday #ERR
PC /> Get-Date | Format-Table DayOfWeek,{ $_ / $null } -ShowError
DayOfWeek $_ / $null
--------- ------------
Wednesday
Failed to evaluate expression " $_ / $null ".
+ CategoryInfo : InvalidArgument: (10/30/2013 2:28:07 PM:PSObject) \[\], RuntimeException
+ FullyQualifiedErrorId : mshExpressionError
Parametry
-AutoSize
Wskazuje, że polecenie cmdlet dostosowuje rozmiar kolumn i liczbę kolumn na podstawie szerokości danych. Domyślnie rozmiar i liczba kolumn są określane przez widok.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-DisplayError
Wskazuje, że polecenie cmdlet wyświetla błędy w wierszu polecenia. Ten parametr jest rzadko używany, ale może być używany jako pomoc w debugowaniu podczas formatowania wyrażeń w poleceniu Format-Table, jeżeli wyrażenia nie wydają się działać.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Expand
Określa format obiektu kolekcji, a także obiekty w kolekcji. Ten parametr jest przeznaczony do formatowania obiektów obsługujących interfejs ICollection (System.Collections). 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.
- Oba: wyświetla właściwości obiektu kolekcji i właściwości obiektów w kolekcji.
Właściwości parametru
| Typ: | String |
| Domyślna wartość: | None |
| Dopuszczalne wartości: | CoreOnly, EnumOnly, Both |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Force
Wskazuje, że polecenie cmdlet kieruje polecenie cmdlet, aby wyświetlić wszystkie informacje o błędzie. Użyj parametru DisplayError lub ShowError. Domyślnie, gdy obiekt błędu jest zapisywany w strumieniach błędów lub strumieniach wyświetlania, wyświetlane są tylko niektóre informacje o błędzie.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-GroupBy
Określa posortowane dane wyjściowe w osobnych tabelach na podstawie wartości właściwości. Na przykład można użyć GroupBy do wyświetlania listy usług w osobnych tabelach na podstawie ich stanu.
Wprowadź wyrażenie lub właściwość danych wyjściowych. Dane wyjściowe muszą zostać posortowane przed wysłaniem ich do Format-Table.
Wartość parametru GroupBy może być nową właściwością obliczeniową. Aby utworzyć tabelę obliczeniową, użyj tabeli skrótów. Prawidłowe klucze to:
- Ciąg <nazwa (lub etykieta)>
- Blok<> lub blok skryptu <>wyrażeń
- < ciągów >FormatString
Właściwości parametru
| Typ: | Object |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-HideTableHeaders
Pomija nagłówki kolumn z tabeli.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-InputObject
Określa obiekty do formatowania. Wprowadź zmienną zawierającą obiekty lub wpisz polecenie lub wyrażenie, które pobiera obiekty.
Właściwości parametru
| Typ: | PSObject |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | True |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Property
Określa właściwości obiektu wyświetlane na ekranie i kolejność ich wyświetlania. Wpisz co najmniej jedną nazwę właściwości (rozdzieloną przecinkami) lub użyj tabeli skrótów, aby wyświetlić właściwość obliczeniową. Symbole wieloznaczne są dozwolone.
Jeśli pominiesz ten parametr, właściwości wyświetlane na ekranie zależą od właściwości pierwszego obiektu. Jeśli na przykład pierwszy obiekt ma PropertyA i PropertyB, ale kolejne obiekty mają PropertyA, PropertyB i PropertyC tylko PropertyA i WłaściwościB nagłówki.
Nazwa parametru właściwość jest opcjonalna. Nie można użyć parametru właściwości i parametru widoku w tym samym poleceniu.
Wartość parametru Property może być nową właściwością obliczeniową. Aby utworzyć właściwość obliczeniową, użyj tabeli skrótów. Prawidłowe klucze to:
- Ciąg <nazwa (lub etykieta)>
- Blok<> lub blok skryptu <>wyrażeń
- < ciągów >FormatString
- Szerokość <int32>
- Wyrównanie (wartość może być "Lewa", "Środkowa" lub "Prawa")
Właściwości parametru
| Typ: | Object[] |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | True |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | 0 |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-ShowError
Wysyła błędy przez szlak przetwarzania. Ten parametr jest rzadko używany, ale może być używany jako pomoc w debugowaniu podczas formatowania wyrażeń w poleceniu Format-Table, jeżeli wyrażenia nie wydają się działać.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-View
Określa nazwę alternatywnego formatu tabeli lub widoku. Nie można użyć parametru właściwości i parametru widoku w tym samym poleceniu.
Właściwości parametru
| Typ: | String |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Wrap
Wyświetla tekst, który przekracza szerokość kolumny w następnym wierszu. Domyślnie tekst przekraczający szerokość kolumny jest obcinany.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
CommonParameters
To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.
Dane wejściowe
PSObject
Możesz przekazać dowolny obiekt do Format-Table.
Dane wyjściowe
Microsoft.PowerShell.Commands.Internal.Format
Format-Table zwraca obiekty formatu reprezentujące tabelę.
Uwagi
Parametr GroupBy zakłada, że obiekty są sortowane. Przed użyciem Sort-Object użyj polecenia cmdlet Format-Table, aby zgrupować obiekty.
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, a następnie użyć polecenia cmdlet Update-FormatData, aby uwzględnić je w programie PowerShell. Alternatywne widoki dla parametru View muszą używać formatu tabeli. W przeciwnym razie polecenie kończy się niepowodzeniem.
Jeśli widok alternatywny jest listą, użyj polecenia cmdlet Format-List. Jeśli widok alternatywny nie jest listą ani tabelą, użyj polecenia cmdlet Format-Custom.