Скрипт Powershell для отображения всех пользователей в группе AD
Я создал ниже
Get-ADGroup -Filter * -SearchBase "DC=Domain,dc=.com" -properties name, members |
Select-Object *,@{Name='Member';Expression={$_.Members -replace '^CN=([^,]+).+$','$1'}} |
FT Name, Member -Autosize |
out-file c:\text.txt
Игнорировать Домен и.com Я заполнил их соответствующей информацией, но ради этого удалил их.
Когда я запускаю это, он возвращает то, что мне нужно, но при взгляде на участников в группе, с которыми все они заканчиваются... и не показывает всех участников
1 ответ
Есть несколько вещей, которые нужно исправить. Давайте посмотрим на них по порядку. Фактический запрос AD может быть упрощен: вам нужно только указать "Члены" в качестве дополнительного свойства для извлечения, так как "Имя" возвращается по умолчанию:
Get-ADGroup -Filter * -SearchBase "DC=Domain,dc=.com" -properties members
Учитывая, что вы хотите вывести только два свойства ("Имя" и ваше пользовательское "Член"), используйте ваш выбор, чтобы получить только те, которые вы хотите:
Select-Object Name ,@{Name='Member';Expression={$_.Members -replace '^CN=([^,]+).+$','$1'}}
Удалите Format-Table: мы уже ограничили выбор в предыдущей команде. Командлеты форматирования предназначены для форматирования выходных данных в окне консоли, и лучшие практики требуют, чтобы они использовались только для этой цели и чтобы они всегда были последним элементом конвейера.
Передача всего этого в Export-Csv будет производить то, что вы хотите:
Export-Csv -NoTypeInformation -Path C:\text.csv
Это помогло мне
Get-ADGroupMember -Identity Администраторы | Выбрать имя объекта, объектный класс, отличительное имя | Export-CSV -Path "adgroupmembers.csv"
Я получил это здесь.