членство в поисковой группе для списка пользователей - PullRequest
0 голосов
/ 01 декабря 2018

Я новичок в PowerShell и на сайте.
Моя проблема в том, что я нашел скрипт, который я изменил.Скрипт работает, но только частично;это не возврат всех групп.Только 4 группы и после этого отображается «.....» и никакой другой информации (вы можете увидеть картинку).

actual output

В основном я хочу сделать следующее:
У меня есть 100 пользователей, и мне нужно экспортировать членство в группе этих 100 пользователей.,

 [$users = Get-Content "D:\users.txt"
$adjob = foreach ($user in $users) {
    Get-ADUser -server "myserver" –Identity $user –Properties MemberOf
}

$adjob | Select-Object Name,@{N='Group';E={$_.MemberOf -replace '^CN=(\[^,\]+),OU=.+$','$1'}} | Format-Table -AutoSize | out-file D:\users.csv][1]

Этот скрипт должен возвращать:

имя
пользователь1
пользователь2
пользователь3

группа

группа1, группа2,group3, остальные группы для каждого пользователя

group1, group2, group3, остальные группы для каждого пользователя

group1, group2, group3, остальные группы для каждого пользователя

Спасибо за помощь!

1 Ответ

0 голосов
/ 01 декабря 2018

Попробуйте это:

$users = Get-Content "D:\users.txt"
$adjob = foreach ($user in $users) {
      Get-ADUser -server "myserver" –Identity $user –Properties MemberOf
}
$adjob | foreach {"`n`n";$_.name, $((($_.MemberOf -split ",")| Select-String "CN") -replace "CN=","")}

На выходе должны быть имена пользователей и групп, расположенные ниже."`n`n" Поставит две пустые строки после каждого пользователя.

Для вашего конкретного случая попробуйте следующее: сначала введите это в PowerShell $FormatEnumerationLimit=-1, а затем замените Format-Table -AutoSize в исходном скрипте на Format-Table -AutoSize -Wrap или Format-List

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