Combina / consolida entradas em array [closed]

1

Eu tenho um script que captura um instantâneo dos grupos do AD e verifica o estado atual do AD quanto às alterações de associação. Ele adiciona psobject a um array e gera uma tabela para um arquivo html. o problema é que eu quero combinar os resultados nos grupos para que ele não repita o user1 remove do group1, user2 remove do group1. A saída atual é:

object    action    group
user1     removed   group1
user2     removed   group1
userN     removed   groupN

Eu quero que o script combine as entradas para que a saída seja:

object    action    group
user1     removed   group1
user2     
userN     removed   groupN   

Tem alguma ideia de como isso seria feito?

    
por miktil 17.08.2015 / 14:43

1 resposta

1

Talvez você possa usar a função Compare-Object no PowerShell para verificar as duas matrizes.

Um exemplo da função de objeto de comparação é:

PS> $shot1 = 1..10
PS> $shot2 = 10..1
PS> Compare-Object $shot1 $shot2

PS> $shot1 = 1..15
PS> $shot2 = 15..1
PS> Compare-Object -ReferenceObject $shot1 -DifferenceObject $shot2

                                 InputObject SideIndicator
                                 ----------- -------------
                                          15 =>
                                           1 <=
                                          14 =>
                                           2 <=
                                           2 =>
                                           1 =>
                                          14 <=
                                          15 <=

Os resultados indicam que um valor de propriedade aparece apenas no conjunto Referência (indicado por < =), somente no conjunto Diferença (indicado por = >) ou em ambos os objetos (indicado por == quando o parâmetro -IncludeEqual é especificado .)

    
por 18.08.2015 / 08:32