#powershell
#powershell
Вопрос:
У меня есть скрипт, который получает имя группы и информацию об участнике, но я хочу, чтобы он также извлекал домен, имя_группы, тип, описание, удаленное имя, managedby, участники, полное имя, имя пользователя и отображаемое имя. Я добавил команду get-user (последняя строка), но не знаю, как включить ее в рабочую часть скрипта.
Get-ADGroup -Filter {GroupCategory -eq "Security" -and Name -like "*"}| %{
$Group = $_.Name
Get-ADGroupMember $Group | Select @{N="GroupName";E={$Group}},@{N="Member";E={$_.Name}}"
}| Export-Csv C:UsersDesktopADReport.csv -nti
Get-ADUser -Filter * -properties * | select fullname*, username*, disp*,distinguishedName*,GroupName,GroupCategory,Member
Ответ №1:
Похоже, все, что вам нужно, это:
- сохраните весь объект group в
$Group
- передайте результат
Get-ADGroupMember
вGet-ADUser
- используйте
$Group
inSelect-Object
для добавления свойств группы к свойствам пользователя.
Пример кода:
Get-ADGroup -Filter * -Properties * | ForEach-Object {
$Group = $_
Get-ADGroupMember $Group |
Where-Object { $_.objectClass -eq 'user'} |
Get-ADUser -Properties * | Select-Object FullName, SamAccountName, Disp*, DistinguishedName, @{
Name = 'GroupName'
Expression = { $Group.Name }
}, @{
Name = 'GroupCategory'
Expression = { $Group.GroupCategory }
}, @{
Name = 'ManagedBy'
Expression = { $Group.ManagedBy }
}
}
Комментарии:
1. Спасибо, это делает то, что мне нужно, теперь мне просто нужно добавить команду ad domain, и вся информация будет извлечена.