建立物件
New-Object
cmdlet 用於建立物件。
# 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"
在許多情況下,將建立一個新物件以匯出資料或將其傳遞給另一個命令列開關。這可以這樣做:
$newObject = New-Object -TypeName PSObject -Property @{
ComputerName = "SERVER1"
Role = "Interface"
Environment = "Production"
}
建立物件的方法有很多種。以下方法可能是建立 PSCustomObject
的最短,最快的方法:
$newObject = [PSCustomObject]@{
ComputerName = 'SERVER1'
Role = 'Interface'
Environment = 'Production'
}
如果你已經有了一個物件,但只需要一個或兩個額外的屬性,你只需使用 Select-Object
新增該屬性:
Get-ChildItem | Select-Object FullName, Name,
@{Name='DateTime'; Expression={Get-Date}},
@{Name='PropertieName'; Expression={'CustomValue'}}
所有物件都可以儲存在變數中或傳遞到管道中。你還可以將這些物件新增到集合中,然後在結尾顯示結果。
物件集合與 Export-CSV(和 Import-CSV)配合良好。CSV 的每一行都是一個物件,每一列都是一個屬性。
格式命令將物件轉換為文字流以供顯示。避免使用 Format- *命令直到任何資料處理的最後一步,以保持物件的可用性。