Powershell: удаление дубликатов удаляет все данные - PullRequest
0 голосов
/ 23 января 2020

Я разрабатываю фрагмент кода, который ищет массив пользователей и извлекает их группы AD, сортирует их и удаляет дубликаты. Однако, когда я запускаю его, я получаю только доменных пользователей ... что, безусловно, неверно.

$myUsers = "test1","test2","test3"
$test = @(foreach ($element in $myUsers) {
Get-ADPrincipalGroupMembership $element | select name
}) | sort -Unique
write-output $test

Это вывод, который я получаю:

name        
----        
Domain Users

Где находится код идет не так? Если я удалю | sort -Unique, тогда я получаю длинный список 140 групп AD, поэтому я знаю, что Get-ADprincipalGroupMembership правильно их вытягивает ...

1 Ответ

1 голос
/ 23 января 2020

Вам необходимо указать, к чему применить уникальный переключатель.

$test = @(foreach ($element in $myUsers) {
    Get-ADPrincipalGroupMembership $element | select Name
  }) | sort -Unique Name

Добавив имя в сортировку, вы получите то, что ищете, список уникальных групп, которые доступны всем пользователям. в совокупности часть.

...