Example
Het New-Object
cmdlet wordt gebruikt om een object aan te maken.
# Create a DateTime object and stores the object in variable "$var"$var = New-Object System.DateTime# calling constructor with parameters$sr = New-Object System.IO.StreamReader -ArgumentList "file path"
In veel gevallen zal een nieuw object worden aangemaakt om gegevens te exporteren of door te geven aan een ander commandlet. Dit kan zo worden gedaan:
$newObject = New-Object -TypeName PSObject -Property @{ ComputerName = "SERVER1" Role = "Interface" Environment = "Production"}
Er zijn vele manieren om een object te maken. De volgende methode is waarschijnlijk de kortste en snelste manier om een PSCustomObject
te maken:
$newObject = @{ ComputerName = 'SERVER1' Role = 'Interface' Environment = 'Production'}
In het geval dat je al een object hebt, maar je hebt slechts een of twee extra eigenschappen nodig, dan kun je die eigenschap eenvoudig toevoegen door Select-Object
:
Get-ChildItem | Select-Object FullName, Name, @{Name='DateTime'; Expression={Get-Date}}, @{Name='PropertieName'; Expression={'CustomValue'}}
Alle objecten kunnen worden opgeslagen in variabelen of worden doorgegeven in de pijplijn. Je zou deze objecten ook aan een verzameling kunnen toevoegen en dan aan het eind de resultaten laten zien.
Objectenverzamelingen werken goed met Export-CSV (en Import-CSV). Elke regel van de CSV is een object, elke kolom een eigenschap.
Commando’s voor Formatteren zetten objecten om in een tekststroom voor weergave. Vermijd het gebruik van Format-* commando’s tot de laatste stap van elke gegevensverwerking, om de bruikbaarheid van de objecten te behouden.