的陣列加起來的值給出的以下陣列的對象:求的快速,簡潔,清晰和代碼平衡組合以從物體
Email Domain Tally
----- ----- -----
[email protected] domainA.com 4
[email protected] domainB.com 1
[email protected] domainC.com 6
[email protected] domainA.com 1
我想「組由」域和加起來理貨,我走了。最終結果是這樣的:
Domain Tally
------ -----
domainA.com 5
domainB.com 1
domainC.com 6
我有一些工作,但我覺得它太複雜了。
$AllTheAddresses = Get-AllTheAddresses
$DomainTally = @()
foreach ($Addy in $AllTheAddresses)
{
if ($DomainTally | Where-Object {$_.RecipientDomain -eq $Addy.RecipientDomain})
{
$DomainTally |
Where-Object {$_.RecipientDomain -eq $Addy.RecipientDomain} |
ForEach-Object {$_.Tally += $Addy.Tally }
}
else
{
$props = @{
RecipientDomain = $Addy.RecipientDomain
Tally = $Addy.Tally
}
$DomainTally += New-Object -TypeName PSObject -Property $props
}
}
謝謝,@ TravisEz13 - 我正要擴展別名,我需要弄清楚標記。 –
快速,簡潔,清晰,贏得 – JamesQMurphy
我想出了'$ Tally.Keys |%{Write-Host $ _; $ Tally。$ _}'。 – Chris76786777