Я новичок в powershell, но я читал руководства и немного практиковался. Моя цель - перечислить всех пользователей во всех группах безопасности по указанному пути. Я нашел способ сделать это:
get-adgroup -Filter * -SearchBase "OU=Groups,DC=corp,DC=ourcompany,DC=Com" | %{Get-ADGroupMember $_.name} | ft name
Но проблема в том, что я не вижу название группы. Все, что я получаю, это группа пользователей. Было бы неплохо, если бы кто-то мог сказать мне, как отобразить название группы, прежде чем все члены этой группы будут перечислены. Благодарю.
active-directory
powershell
groups
Алек Т
источник
источник
% { "GroupName: $($_.Name)"; "==========" ; Get-ADGroupMember $_ } | ft name
то вы также можете получить то, что вам нужно. Ответ Райана все еще лучше, но это одна строка, если хотите.Ответы:
Gimme the codes!
полномочия, активируйте!Дело в том, просто не торопитесь и разбивайте его на шаги. Я знаю, что забавно пытаться привести все и кухонную раковину в один ряд с Powershell, но это ни в коем случае не требуется.
Несколько заметок:
Вам не нужно делать это,
Get-ADGroupMember
если вы собираете свойство Members в исходномGet-ADGroup
командлете. Хорошая вещь в этом заключается в том, что он вдвое сокращает количество вызовов, которые вы должны сделать в AD, что должно ускорить выполнение вашего скрипта и облегчить нагрузку на контроллер домена.$ G.Members отобразит всех членов группы $ G ... в Powershell 3. В Powershell 2 вам все равно может понадобиться поместить другой Foreach внутри Foreach для перечисления через членов группы. ( Эй, черт, я слышал, что вы как петли ... )
Я использую
Write-Host
здесь, который является грубым. Вы никогда не должны действительно использоватьWrite-Host
. Вместо этого вы должны создавать и выводить объекты, а не текст, но это была совсем другая тема, и мне было лень это делать для этого ответа.источник
Вот гораздо лучшее решение. Это поместит все в csv из 3 столбцов с именем группы, именем пользователя и именем учетной записи sam. Намного проще понять, в какую группу входит человек, когда в группе 400 пользователей, поскольку вам не нужно прокручивать.
источник
Я должен был добавить
.name
после,$group
чтобы сделать эту работу для меня.источник
Если вы когда-либо сталкивались с
Size Limit
проблемой с группами, включающими более 5000 участников, вы можете изменить одну строку следующим образом:источник
Вот сценарии, которые экспортируют все группы в подразделении в отдельный файл для каждой группы с именем и описанием группы. Если кто-то хочет этого ..
источник