如果我這樣做你如何添加更多的屬性值,以自定義對象
$account = New-Object -TypeName psobject -Property @{User="Jimbo"; Password="1234"}
如何添加額外的用戶和密碼值$account
不會覆蓋現有的?
我無法從哈希表中預先填充$account
。我不知道運行時的所有用戶和密碼。
如果我這樣做你如何添加更多的屬性值,以自定義對象
$account = New-Object -TypeName psobject -Property @{User="Jimbo"; Password="1234"}
如何添加額外的用戶和密碼值$account
不會覆蓋現有的?
我無法從哈希表中預先填充$account
。我不知道運行時的所有用戶和密碼。
如果你想使用$account
來存儲用戶密碼+證書,你被宣佈爲array
和添加項目,當你想:
$account
$account = @()
$account += New-Object -TypeName psobject -Property @{User="Jimbo"; Password="1234"}
$account += New-Object -TypeName psobject -Property @{User="Jimbo2"; Password="abcd"}
$account += New-Object -TypeName psobject -Property @{User="Jimbo3"; Password="idontusepwds"}
:
User Password
---- --------
Jimbo 1234
Jimbo2 abcd
Jimbo3 idontusepwds
太棒了。謝謝。當超時到期時,我會將其標記爲答案。 – ATtheincredibleaf
@ATtheincredibleaf你的問題是關於添加屬性值?這個答案顯示瞭如何構建一個對象數組 – Matt
我會在循環中構建它,並避免使用「+ =」。你僅限於PowerShell 2.0嗎? – Matt
的-Property
New-Object
的參數將散列表作爲參數。如果您使用哈希表排序,您可以按特定順序添加屬性。如果您需要擴展在創建時的屬性列表中只需添加更多的條目哈希表:
$ht = [ordered]@{
'Foo' = 23
'Bar' = 'Some value'
'Other Property' = $true
...
}
$o = New-Object -Type PSObject -Property $ht
如果您需要添加更多的屬性後創建對象,你可以通過Add-Member
小命令這樣做:
$o | Add-Member -Name 'New Property' -Type NoteProperty -Value 23
$o | Add-Member -Name 'something' -Type NoteProperty -Value $false
...
$o = $o | Select-Object *, @{n='New Property';e={23}}, @{n='something';e={$false}}
我認爲,我們需要看到的你是什麼樣的例子試圖去做。如果您在'new-object'之前構建哈希表,則添加新屬性會更容易。 '$ props = @ {User =「Jimbo」;密碼= 「1234」}; $ props.NewProperty =「是啊」 – Matt
我覺得這是一個愚蠢的標記:http://stackoverflow.com/questions/17353797/powershell-how-to-initialize-array-of-custom-objects – Matt