De opmaak van pijplijnuitvoer beheren

Voltooid

PowerShell biedt verschillende manieren om de opmaak van pijplijnuitvoer te beheren. De standaardopmaak van de uitvoer is afhankelijk van de objecten in de uitvoer en de configuratiebestanden die de uitvoer definiëren. Nadat PowerShell de juiste indeling heeft bepaald, wordt de uitvoer doorgegeven aan een set opmaak-cmdlets zonder uw invoer.

De opmaak-cmdlets zijn:

  • Format-List
  • Format-Table
  • Format-Wide
  • Format-Custom

U kunt de standaardopmaak van uitvoer overschrijven door een van de voorgaande cmdlets op te geven als onderdeel van de pijplijn.

Notitie

Voor de cmdlet Format-Custom moet u aangepaste XML-configuratiebestanden maken die de indeling definiëren. Het wordt zelden gebruikt en valt buiten het bereik van deze cursus.

Elke opmaak-cmdlet accepteert de parameter -Property . De parameter -Property accepteert een door komma's gescheiden lijst met eigenschapsnamen en filtert vervolgens de lijst met eigenschappen die worden weergegeven en de volgorde waarin ze worden weergegeven. Houd er rekening mee dat wanneer u eigenschapsnamen voor deze parameter opgeeft, de oorspronkelijke opdracht deze eigenschappen moet hebben geretourneerd.

De cmdlet Get-ADUser retourneert bijvoorbeeld alleen een subset eigenschappen, tenzij u de parameter -Properties opgeeft. Als u daarom de eigenschap Plaats opgeeft in de parameter -Property voor een opmaak-cmdlet, wordt deze weergegeven alsof de eigenschap niet is ingesteld, tenzij u ervoor zorgt dat de eigenschap Plaats een van de eigenschappen is die wordt geretourneerd voor de gebruikers die worden opgevraagd.

Sommige cmdlets geven standaard een andere set eigenschappen door voor elke opmaak-cmdlet. Met de cmdlet Get-Service worden bijvoorbeeld standaard drie eigenschappen (Status, Naam en DisplayName) in een tabelindeling weergegeven. Als u de uitvoer van Get-Service als een lijst weergeeft met behulp van de Get-Service | Opdracht Lijst opmaken, zes extra eigenschappen worden weergegeven.

Format-List

De cmdlet Format-List , zoals de naam al aangeeft, maakt de uitvoer van een opdracht op als een eenvoudige lijst met eigenschappen, waarbij elke eigenschap op een nieuwe regel wordt weergegeven. Als de opdracht uitvoer doorgeeft aan Format-List meerdere objecten retourneert, wordt een afzonderlijke lijst met eigenschappen voor elk object weergegeven. Lijstopmaak is met name handig wanneer een opdracht een groot aantal eigenschappen retourneert die moeilijk te controleren zijn in tabelindeling.

Notitie

De alias voor de cmdlet Format-List is fl.

Als u een eenvoudige lijst wilt weergeven in de console van de standaardeigenschappen voor de processen die op de lokale computer worden uitgevoerd, voert u de volgende opdracht in en drukt u op Enter:

Get-Process | Format-List 

Format-Table

De cmdlet Format-Table formatteert uitvoer als een tabel, waarbij elke rij een object vertegenwoordigt en elke kolom een eigenschap vertegenwoordigt. De tabelindeling is handig voor het weergeven van eigenschappen van veel objecten tegelijk en het vergelijken van de eigenschappen van deze objecten.

De tabel bevat standaard de eigenschapsnamen als de kolomkoppen, die zijn gescheiden van de gegevens door een rij streepjes. De opmaak van de tabel is afhankelijk van de geretourneerde objecten. U kunt deze opmaak wijzigen met behulp van verschillende parameters, zoals:

  • -Automatisch aanpassen. Met deze parameter wordt de grootte en het aantal kolommen aangepast op basis van de breedte van de gegevens. In Windows PowerShell 5.0 en hoger is -AutoSize standaard ingesteld op true . In oudere versies van Windows PowerShell kunnen de standaardwaarden gegevens in de tabel afkappen.
  • -HideTableHeaders. Met deze parameter worden de tabelkoppen uit de uitvoer verwijderd.
  • -Wrap. Deze parameter zorgt ervoor dat tekst die breder is dan de kolombreedte, terugloopt naar de volgende regel.

Notitie

De alias voor de cmdlet Format-Table is ft.

Als u de eigenschappen Name, ObjectClass en Description wilt weergeven voor alle Windows Server Active Directory-objecten als tabel, waarbij de kolommen zijn ingesteld om de tekst automatisch te wijzigen en terug te laten lopen, voert u de volgende opdracht in de console in en drukt u op Enter:

Get-ADObject -filter * -Properties * | ft -Property Name, ObjectClass, Description -AutoSize -Wrap

Format-Wide

De uitvoer van de cmdlet Format-Wide is één eigenschap in één lijst die in meerdere kolommen wordt weergegeven. Deze cmdlet werkt zoals de parameter /w van de dir-opdracht in cmd.exe. De brede indeling is handig voor het weergeven van grote lijsten met eenvoudige gegevens, zoals de namen van bestanden of processen, in een compacte indeling.

Standaard geeft Format-Wide de uitvoer in twee kolommen weer. U kunt het aantal kolommen wijzigen met behulp van de parameter -Column . De parameter -AutoSize , die op dezelfde manier werkt als voor Format-Table, is ook beschikbaar. U kunt -AutoSize en -Column echter niet samen gebruiken. De parameter -Property is ook beschikbaar, maar in het geval van Format-Wide kan deze slechts één eigenschapsnaam accepteren.

Notitie

De alias voor de cmdlet Format-Wide is fw.

Als u de eigenschap DisplayName van alle groepsbeleidsobjecten (GPO's) in het huidige domein als uitvoer in drie kolommen wilt verzenden, voert u de volgende opdracht in de console in en drukt u op Enter:

Get-GPO -all | fw -Property DisplayName -Column 3