Olvassa el a sorozatban szereplő cikkeket:
- További információ a Windows PowerShell automatizálásáról
- A PowerShell-ben található cmdletek használatának elsajátítása
- A PowerShell objektumainak használata
És egész héten maradjon a sorozatban.
Alapértelmezett formázás
Amikor először elkezdtem a PowerShell-lel, azt hittem, minden mágia, de az igazság az, hogy csak egy kis időbe telik, hogy megértsük, mi folyik a motorháztető alatt. Ugyanez igaz a PowerShell formázó rendszerre. Valójában, ha a Get-Service cmdletet futtatja, a létrehozott kimenet csak 3 tulajdonságot jelenít meg: Állapot, Név és DisplayName.
notepad C:WindowsSystem32WindowsPowerShellv1.0DotNetTypes.format.ps1xml
Ha a Notepad Find funkciót használjuk, gyorsan átugorhatunk a Get-Service cmdlet kimenetét részletező részre a ServiceController típus keresésével.
Az adatok formázása
Ha nem elégedett egy objektum vagy típus alapértelmezett formázásával, akkor saját formázását görgeti. Három cmdlet kell ahhoz, hogy tudd ezt.
- Format-List
- Format-Table
- Format-Wide
Format-Wide egyszerűen gyűjt egy objektum gyűjteményét és minden objektum egyetlen tulajdonságát megjeleníti. Alapértelmezés szerint keresni fog egy név tulajdonságát; ha az objektumok nem tartalmaznak névtulajdonságot, akkor az objektum első tulajdonságát fogja használni, ha a tulajdonságok betűrendben vannak rendezve.
Get-Service | Format-Wide
Get-Service | Format-Wide -Property DisplayName -Column 6
Ez a táblázatos nézet nagyon jól illik ehhez az információhoz, de engedjük meg, hogy megnézzük a lista formájában. Mindössze annyit kell tennünk, hogy csővezeték Format-List.
Get-Process | Format-List
Get-Process | Format-List –Property *
Get-Process | Format-List –Property name,id
Format-Table, másrészt adatokat vesz fel, és táblázatosvá alakítja. Mivel a Get-Process adataink már táblázatban vannak, használhatjuk azt, hogy könnyen kiválasszuk a táblázatban megjelenítendő tulajdonságokat. Az AutoSize paramétert használtam, hogy az összes adatot egyetlen képernyőre illessze.
Get-Process | Format-Table name,id –AutoSize
Szűrés és összehasonlítás
Az objektumalapú csővezeték használatának egyik legjobb dologja az, hogy a tárgyakat a Csővezetékből bárhol fel lehet szűrni a Where-Object cmdlet használatával.
Get-Service | Where-Object {$_.Status -eq “Running”}
- eq (Equal To)
- neq (nem egyenlő)
- gt (nagyobb mint)
- ge (nagyobb vagy egyenlő)
- lt (Kevesebb mint)
- le (Kevesebb mint vagy egyenlő)
- hasonló (Wildcard String Match)
A teljes listát és további információkat a kb. Összehasonlító koncepcionális súgófájlban tekintheti meg, azonban időbe telik a Where-Obeject szintaxis használata. Ez minden ebben az időben!