- 11/22/2019
- 5 perc olvasni
-
- j
- s
- B
- m
a PowerShell egy sor parancsmagokat, amely lehetővé teszi, hogy ellenőrizzék, hogy a tulajdonságok jelennek meg forparticular tárgyakat. Az összes cmdlet neve a Format
igével kezdődik., Lehetővé teszik, hogy kiválassza, mely tulajdonságokat szeretné megmutatni.
Get-Command -Verb Format -Module Microsoft.PowerShell.Utility
Ez a cikk aFormat-Wide
,Format-List
ésFormat-Table
cmdlets.
a PowerShell minden egyes objektumtípusának alapértelmezett tulajdonságai vannak, amelyeket akkor használnak, ha nem adja meg, hogy melyiket jelenítse meg. Minden cmdlet ugyanazt a Tulajdonságparamétert is használja annak megadásához, hogy melyika megjeleníteni kívánt tulajdonságok., Mivel a Format-Wide
csak egyetlen tulajdonságot jelenít meg, a Propertyparameter csak egyetlen értéket vesz fel, de a Format-List
és Format-Table
tulajdonságnevek listájának elfogadása.
ebben a példában a Get-Process
cmdlet alapértelmezett kimenete azt mutatja,hogy az Internet Explorer két példánya fut.,
Get-Process -Name iexplore
a Folyamatobjektumok alapértelmezett formátuma az itt látható tulajdonságokat jeleníti meg:
NPM(K) PM(M) WS(M) CPU(s) Id SI ProcessName ------ ----- ----- ------ -- -- ----------- 32 25.52 10.25 13.11 12808 1 iexplore 52 11.46 26.46 3.55 21748 1 iexplore
egyelemű kimenet esetén a formátum széles
a Format-Wide
cmdlet alapértelmezés szerint csak a egy tárgy., Olyan kapcsolódó minden tárgy jelenik meg, egyetlen oszlop:
Get-Command -Verb Format | Format-Wide
Format-Custom Format-HexFormat-List Format-TableFormat-Wide
megadhatja a nem alapértelmezett tulajdonság:
Get-Command -Verb Format | Format-Wide -Property Noun
Custom HexList TableWide
Irányítja a Formátum-Széles Kijelző Oszlop
a Format-Wide
parancsmagot, hogy a készülék csak egy ingatlan egy időben. Ez teszi ituseful megjelenítésére nagy listák több oszlopban.,
Get-Command -Verb Format | Format-Wide -Property Noun -Column 3
Custom Hex ListTable Wide
a Formátum-Listát a Lista Nézet
A Format-List
parancsmagot megjelenik egy tárgy formájában egy lista, minden ingatlan labeledand megjelenik egy külön sort:
Get-Process -Name iexplore | Format-List
Id : 12808Handles : 578CPU : 13.140625SI : 1Name : iexploreId : 21748Handles : 641CPU : 3.59375SI : 1Name : iexplore
megadhatja, mint sok tulajdonságai, ahogy akarod:
Get-Process -Name iexplore | Format-List -Property ProcessName,FileVersion,StartTime,Id
Egyre Részletes Információk Segítségével a Formátum-Lista helyettesítő karakterekkel
A Format-List
parancsmagot lehetővé teszi, hogy használja a helyettesítő értéket a Vagyon, paraméter., Ezek részletes információkat jelenítenek meg. Az objektumok gyakran több információt tartalmaznak, mint amennyire szüksége van, ezért a PowerShell alapértelmezés szerint nem jeleníti meg az összes tulajdonságértéket. Az összes tulajdonság megjelenítéséhezegy objektum, használja a Format-List -Property *
parancsot. A következő parancs több mint 60 sor kimenetet generál egyetlen folyamathoz:
Get-Process -Name iexplore | Format-List -Property *
bár a Format-List
parancs hasznos a részletek bemutatásához, ha áttekintést szeretne az outputról, amely sok elemet tartalmaz, az egyszerűbb táblázatos nézet gyakran hasznosabb.,
A Format-Table a Táblázatos Kimenet
Ha az Format-Table
parancsmagot, ahol nincs tulajdon nevek meghatározott formátumban a kimenetet aGet-Process
parancs, hogy pontosan ugyanazt az eredményt, mint te, anélkül, hogy egy Format
parancsmagot. Bydefault, PowerShell megjeleníti folyamat objektumok táblázatos formátumban.
Get-Service -Name win* | Format-Table
a Formátum-tábla kimenet javítása (AutoSize)
bár a táblázatos nézet sok információ megjelenítéséhez hasznos, nehéz lehet értelmezni, ha a kijelző túl keskeny az adatokhoz., Az előző példában a kimenet megszakadt. Ha az Format-Table
parancs futtatásakor megadja az AutoSize paramétert,a PowerShell az oszlopszélességet a tényleges megjelenített adatok alapján számítja ki. Ez teszi az oszlopokatolvasható.
Get-Service -Name win* | Format-Table -AutoSize
a Format-Table
a cmdlet továbbra is csonkolhatja az adatokat, de csak a képernyő végén csonkolódik. Tulajdonságok, kivéve az utolsó megjelenített, kapnak annyi méretet, amennyire szükségük van a sajáthosszúbb adatelem megjelenítéséhez helyesen.,
Get-Service -Name win* | Format-Table -Property Name,Status,StartType,DisplayName,DependentServices -AutoSize
a Format-Table
parancs feltételezi, hogy a tulajdonságok fontossági sorrendben vannak felsorolva. Tehát megpróbálja teljes mértékben megjeleníteni a kezdethez legközelebbi tulajdonságokat. Ha a Format-Table
parancs nem tudja megjeleníteniminden tulajdonságot, néhány oszlopot eltávolít a kijelzőről. Láthatja ezt a viselkedést afüggetlenszolgáltatások tulajdonság előző példa.
csomagolási formátum-táblázat kimenet oszlopokban (Wrap)
a Wrapparameter használatával kényszerítheti a hosszadalmas Format-Table
adatokat a megjelenítési oszlopba való csomagoláshoz., A Wrap paraméter használata nem feltétlenül azt teszi, amit vársz, mivel használjadefault beállítások, ha nem is adja meg az AutoSize:
Get-Service -Name win* | Format-Table -Property Name,Status,StartType,DisplayName,DependentServices -Wrap
A Wrap paraméter használata önmagában nem lassítja le a feldolgozást. Azonban, usingAutoSize formázni egy rekurzív fájl lista egy nagy könyvtárszerkezet is eltarthat hosszú ideigés használja sok memóriát, mielőtt megjelenítené az első kimeneti elemeket.
ha nem aggódik a rendszerterhelés miatt, akkor az AutoSize jól működik a Wrap paraméterrel.,A kezdeti oszlopok továbbra is annyi szélességet használnak, amennyire szükség van az elemek egy sorban történő megjelenítéséhez, de a végső oszlopot szükség esetén becsomagolják.
Megjegyzés
előfordulhat, hogy egyes oszlopok nem jelennek meg, ha először a legszélesebb oszlopokat adja meg. A legjobb eredmény érdekében először adja meg a legkisebb adatelemeket.
a következő példában először a legszélesebb tulajdonságokat adjuk meg.
Get-Process -Name iexplore | Format-Table -Wrap -AutoSize -Property FileVersion,Path,Name,Id
még a csomagolás, a végső Id oszlopot elhagyjuk:
szervező tábla kimenet (-GroupBy)
egy másik hasznos paraméter táblázatos kimeneti vezérlő GroupBy., Hosszabb táblázatos listák inparticular lehet nehéz összehasonlítani. A GroupBy paraméter csoportok kimenet alapján tulajdonságérték. Például csoportosíthatjuk a szolgáltatásokat a StartType segítségével a könnyebb ellenőrzés érdekében, elhagyva a theStartType értéket az ingatlanlistából:
Get-Service -Name win* | Sort-Object StartType | Format-Table -GroupBy StartType