• 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 Formatigé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-Tabletulajdonsá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