新对象添加成员 - 无法添加成员 - powershell

New-Object add-member - cannot add a member - powershell

我有一个问题:( 当我添加与之前 Object 同名的 属性 的新对象时,我遇到了很多错误。

"Add-Member : Cannot add a member with the name "ServerName" because a member with that name already exists. To overwrite the member anyway, add the Force par ameter to your command."

有效但有错误;) 有人能给我解决方案吗??

下面的示例代码:

$OutputObj = @()

$OutputObj += New-Object -TypeName PSobject
$OutputObj | Add-Member -MemberType NoteProperty -Name ServerName -Value "server1"
$OutputObj | Add-Member -MemberType NoteProperty -Name Status -Value "online"
$OutputObj | Add-Member -MemberType NoteProperty -Name Uptime -Value "01:20"

$OutputObj += New-Object -TypeName PSobject
$OutputObj | Add-Member -MemberType NoteProperty -Name ServerName -Value "server2"
$OutputObj | Add-Member -MemberType NoteProperty -Name Status -Value "online"
$OutputObj | Add-Member -MemberType NoteProperty -Name Uptime -Value "01340"

您是在数组而不是对象上添加成员。尝试以下操作:

$OutputObj = @()

$NewObj = New-Object -TypeName PSobject
$NewObj | Add-Member -MemberType NoteProperty -Name ServerName -Value "server1"
$NewObj | Add-Member -MemberType NoteProperty -Name Status -Value "online"
$NewObj | Add-Member -MemberType NoteProperty -Name Uptime -Value "01:20"

$OutputObj += $NewObj

$NewObj = New-Object -TypeName PSobject
$NewObj | Add-Member -MemberType NoteProperty -Name ServerName -Value "server2"
$NewObj | Add-Member -MemberType NoteProperty -Name Status -Value "online"
$NewObj | Add-Member -MemberType NoteProperty -Name Uptime -Value "01340"
$OutputObj += $NewObj

或者,我会执行以下操作:

$OutputObj = @()
$OutputObj += New-Object -TypeName PSobject -Property @{
    ServerName = "server1"
    Status = "Online"
    Uptime = "01:20"
}


$OutputObj += New-Object -TypeName PSobject -Property @{
    ServerName = "server2"
    Status = "Online"
    Uptime = "01340"
}

因为每次使用Add-Member都会销毁并生成一个新对象。