Megosztás a következőn keresztül:


Format-Table

A kimenet formázása táblázatként.

Syntax

Default (Alapértelmezett)

Format-Table
    [[-Property] <Object[]>]
    [-AutoSize]
    [-HideTableHeaders]
    [-Wrap]
    [-GroupBy <Object>]
    [-View <string>]
    [-ShowError]
    [-DisplayError]
    [-Force]
    [-Expand <string>]
    [-InputObject <psobject>]
    [<CommonParameters>]

Description

A Format-Table parancsmag táblázatként formázja a parancs kimenetét, az egyes oszlopokban az objektum kijelölt tulajdonságaival. Az objektumtípus határozza meg az egyes oszlopokban megjelenő alapértelmezett elrendezést és tulajdonságokat, de a Tulajdonság paraméter használatával kiválaszthatja a megtekinteni kívánt tulajdonságokat.

A kivonattáblával számított tulajdonságokat is hozzáadhat egy objektumhoz a megjelenítés előtt, és megadhatja a tábla oszlopfejléceit. Számított tulajdonság hozzáadásához használja a Tulajdonság vagy GroupBy paramétert.

Példák

1. példa: PowerShell-gazdagép formázása

Ez a parancs információkat jelenít meg a PowerShell gazdagépprogramjáról egy táblázatban. Alapértelmezés szerint egy listában vannak formázva.

Get-Host | Format-Table -AutoSize

A Get-Host parancsmag lekéri a gazdagépet képviselő objektumokat. A folyamatkezelő (|) átadja az objektumot a Format-Table parancsmagnak. A Format-Table parancsmag formázja a táblázat objektumait. Az Automatikus méretezés paraméter az oszlopszélességeket a csonkolás minimalizálása érdekében módosítja.

2. példa: Folyamatok formázása BasePriority szerint

Ez a parancs az azonos alap prioritású csoportokban jeleníti meg a számítógépen lévő folyamatokat.

Get-Process | Sort-Object -Property basepriority | Format-Table -GroupBy basepriority -Wrap

A Get-Process parancsmag a számítógép minden egyes folyamatát képviselő objektumokat kap. A folyamatkezelő (|) átadja az objektumot a Sort-Object parancsmagnak, amely az objektumokat az alap prioritásuk szerinti sorrendbe rendezi.

Egy másik folyamatkezelő átadja az eredményeket a Format-Table parancsmagnak. A GroupBy paraméter a BasePriority tulajdonság értéke alapján csoportokba rendezi a folyamatok adatait. A Wrap paraméter biztosítja, hogy az adatok ne csonkoljanak.

3. példa: Folyamatok formázása kezdő dátum szerint

Get-Process | Sort-Object starttime | Format-Table -View starttime

Ez a parancs a folyamat kezdő dátuma alapján jeleníti meg a csoportban lévő számítógépen található folyamatokkal kapcsolatos információkat. A Get-Process parancsmaggal lekérheti a számítógépen lévő folyamatokat képviselő objektumokat. A folyamatkezelő (|) elküldi a Get-Process kimenetét a Sort-Object parancsmagnak, amely a StartTime tulajdonság alapján rendezi azt. Egy másik folyamatüzemeltető elküldi a rendezett eredményeket a Format-Table.

A View paraméter a system.diagnostics.process objektumok fájljában definiált StartTime nézet kiválasztásá ra szolgál, például a által visszaadott objektumokra. Ez a nézet a folyamat StartTime rövid dátummá alakítja, majd a folyamatokat a kezdési dátum szerint csoportosítja.

A DotNetTypes.format.ps1xml fájl egy prioritási nézetet is tartalmaz a folyamatokhoz. Létrehozhat saját format.ps1xml fájlokat testreszabott nézetekkel.

4. példa: Szolgáltatások formázása

Get-Service | Format-Table -Property Name, DependentServices

Ez a parancs megjeleníti a számítógépen található összes szolgáltatást egy két oszlopból álló táblában, Név és DependServices. A Get-Service parancsmag minden szolgáltatást lekéri a számítógépen. A folyamatkezelő (|) elküldi az eredményeket a Format-Table parancsmagnak, amely egy táblában formázja a kimenetet. A tulajdonság paraméter oszlopként adja meg a táblában megjelenő tulajdonságokat. A tulajdonság paraméter neve nem kötelező, ezért kihagyhatja, például Format-Table Name, DependentServices.

Name és DependentServices csak két tulajdonsága a szolgáltatásobjektumoknak. Az összes tulajdonság megtekintéséhez írja be a Get-Service | Get-Member -MemberType Properties.

5. példa: Folyamat formázása és futási idejének kiszámítása

Ez a parancs bemutatja, hogyan használható számított tulajdonság egy táblában.

Get-Process Notepad | Format-Table ProcessName,
   @{Label="TotalRunningTime"; Expression={(Get-Date) - $_.StartTime}}

A parancs megjelenít egy táblát a helyi számítógépen található összes Jegyzettömb-folyamat folyamatnevével és teljes futási idejével. A teljes futási idő kiszámítása úgy történik, hogy kivonja az egyes folyamatok kezdési idejét az aktuális időből.

A parancs a Get-Process parancsmaggal lekéri a Jegyzettömb nevű összes folyamatot a helyi számítógépen. A folyamatüzemeltető (|) elküldi az eredményeket Format-Table, amely egy táblát jelenít meg két oszlopban: ProcessName, a folyamatok standard tulajdonsága és a TotalRunningTime, egy számított tulajdonság.

A TotalRunningTime tulajdonságot egy két kulcsból, Címke és Kifejezéstartalmazó kivonattábla adja meg. A tulajdonság neve a Címke kulcshoz van rendelve. A számítás a Kifejezés kulcshoz van rendelve. A kifejezés lekéri az egyes folyamatobjektumok StartTime tulajdonságát, és kivonja azt egy Get-Date parancs eredményéből, amely az aktuális dátumot és időpontot kapja.

6. példa: Jegyzettömb-folyamatok formázása

Ezek a parancsok hasonlóak az előző parancshoz, kivéve, hogy ezek a parancsok a Get-WmiObject parancsmagot használják.

$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)}}

Az első parancs a Get-WmiObject parancsmagot használja a WMI Win32_Process osztály példányainak lekéréséhez, amelyek a Server01 számítógépen Notepad.exenevű összes folyamatot ismertetik. A parancs a folyamatadatokat a $Processes változóban tárolja.

A második parancs egy folyamatkezelő (|) használatával küldi el a $Processes változó folyamatadatait a Format-Table parancsmagnak, amely megjeleníti a ProcessName és egy új számított tulajdonságot.

A parancs a "Teljes futási idő" új számított tulajdonság nevét rendeli hozzá a Címke kulcshoz. A Kifejezés kulcshoz rendelt szkriptblokk kiszámítja, hogy a folyamat mennyi ideig futott úgy, hogy kivonja a folyamat létrehozási dátumát az aktuális dátumból. A Get-Date parancsmag az aktuális dátumot kapja meg. A ConvertToDateTime metódus a Win32_Process objektum CreationDate tulajdonságát WMI CIM_DATETIME objektumból .NET DateTime objektummá alakítja, amely összehasonlítható a Get-Datekimenetével. Ezután a konvertált létrehozási dátum ki lesz vonva az aktuális dátumból. Az eredmény az teljes futási időértéke.

7. példa: Formátumhibák elhárítása

Az alábbi példák a DisplayError vagy ShowError paraméterek kifejezéssel való hozzáadásának eredményeit mutatják be.

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

Paraméterek

-AutoSize

Azt jelzi, hogy a parancsmag az adatok szélessége alapján módosítja az oszlopok méretét és számát. Alapértelmezés szerint az oszlop méretét és számát a nézet határozza meg.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-DisplayError

Azt jelzi, hogy a parancsmag hibákat jelenít meg a parancssorban. Ezt a paramétert ritkán használják, de hibakeresési segédként is használható, ha kifejezéseket formáz egy Format-Table parancsban, és úgy tűnik, hogy a kifejezések nem működnek.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Expand

Megadja a gyűjteményobjektum formátumát, valamint a gyűjteményben lévő objektumokat. Ez a paraméter az ICollection (System.Collections) felületet támogató objektumok formázására szolgál. Az alapértelmezett érték az EnumOnly. A paraméter elfogadható értékei a következők:

  • EnumOnly: Megjeleníti a gyűjtemény objektumainak tulajdonságait.
  • CoreOnly: Megjeleníti a gyűjteményobjektum tulajdonságait.
  • Mindkettő: Megjeleníti a gyűjteményobjektum tulajdonságait és a gyűjteményben lévő objektumok tulajdonságait.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:None
Elfogadott értékek:CoreOnly, EnumOnly, Both
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Force

Azt jelzi, hogy a parancsmag az összes hibainformáció megjelenítésére irányítja a parancsmagot. Használja a DisplayError vagy ShowError paraméterrel. Alapértelmezés szerint, amikor egy hibaobjektumot írunk a hiba- vagy kijelzőfolyamokba, csak néhány hibainformáció jelenik meg.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-GroupBy

Egy tulajdonságérték alapján külön táblák rendezett kimenetét adja meg. A GroupBy használatával például külön táblákban listázhatja a szolgáltatásokat az állapotuk alapján.

Adja meg a kimenet kifejezését vagy tulajdonságát. A kimenetet rendezni kell, mielőtt elküldené Format-Table.

A GroupBy paraméter értéke új számított tulajdonság lehet. Számított tulajdonság létrehozásához használjon kivonattáblát. Az érvényes kulcsok a következők:

  • Név (vagy címke) <sztring>
  • Kifejezés <sztring> vagy <szkriptblokkoló>
  • FormatString <sztring>

Paramétertulajdonságok

Típus:Object
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-HideTableHeaders

Kihagyja az oszlopfejléceket a táblából.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-InputObject

Megadja a formázandó objektumokat. Adjon meg egy változót, amely tartalmazza az objektumokat, vagy írjon be egy parancsot vagy kifejezést, amely lekéri az objektumokat.

Paramétertulajdonságok

Típus:PSObject
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:True
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Property

Megadja a megjelenítésben megjelenő objektumtulajdonságokat és azok megjelenési sorrendjét. Írjon be egy vagy több tulajdonságnevet (vesszővel elválasztva), vagy használjon kivonattáblát egy számított tulajdonság megjelenítéséhez. Helyettesítő karakterek használata engedélyezett.

Ha kihagyja ezt a paramétert, a megjelenítésben megjelenő tulajdonságok az első objektum tulajdonságaitól függnek. Ha például az első objektum PropertyA és PropertyB, de az azt követő objektumok PropertyA, PropertyB és PropertyC csak PropertyA és PropertyB fejlécek jelennek meg.

A paraméter neve tulajdonság nem kötelező. Nem használhatja ugyanabban a parancsban a tulajdonság és a View paramétereket.

A tulajdonság paraméter értéke új számított tulajdonság lehet. Számított tulajdonság létrehozásához használjon kivonattáblát. Az érvényes kulcsok a következők:

  • Név (vagy címke) <sztring>
  • Kifejezés <sztring> vagy <szkriptblokkoló>
  • FormatString <sztring>
  • Szélesség <int32>
  • Igazítás (az érték lehet "Balra", "Középre" vagy "Jobbra")

Paramétertulajdonságok

Típus:

Object[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:True
DontShow:False

Paraméterkészletek

(All)
Position:0
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-ShowError

Hibákat továbbít a csővezetéken keresztül. Ezt a paramétert ritkán használják, de hibakeresési segédként is használható, ha kifejezéseket formáz egy Format-Table parancsban, és úgy tűnik, hogy a kifejezések nem működnek.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-View

Egy másik táblázatformátum vagy nézet nevét adja meg. Nem használhatja ugyanabban a parancsban a tulajdonság és a View paramétereket.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Wrap

A következő sor oszlopszélességét meghaladó szöveget jelenít meg. Alapértelmezés szerint az oszlopszélességen túli szöveg csonkolt.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

CommonParameters

Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.

Bevitelek

PSObject

Bármilyen objektumot becsúszthat Format-Table.

Kimenetek

Microsoft.PowerShell.Commands.Internal.Format

Format-Table a táblát képviselő formázási objektumokat adja vissza.

Jegyzetek

A GroupBy paraméter feltételezi, hogy az objektumok rendezve vannak. Használja a Sort-Object parancsmagot, mielőtt Format-Table használva csoportosítja az objektumokat.

A View paraméter lehetővé teszi a táblázat alternatív formátumának megadását. Használhatja a PowerShell-címtár *.format.PS1XML fájljaiban definiált nézeteket, vagy létrehozhat saját nézeteket új PS1XML-fájlokban, majd a Update-FormatData parancsmaggal felveheti őket a PowerShellbe. A Nézet paraméter alternatív nézeteinek táblaformátumot kell használniuk, ellenkező esetben a parancs sikertelen. Ha a másik nézet lista, használja a Format-List parancsmagot. Ha az alternatív nézet nem lista vagy tábla, használja a Format-Custom parancsmagot.