2016-05-19 3 views
0

Вот ситуация, в которой находятся аудиторы, и запрашивают отчет для всех пользователей в определенных группах с информацией о какой-либо учетной записи плюс, в какую группу они находятся. Так что я сделал, это положить все запрошенных групп в txt-файле и использовать Get-Content и передать его в ForEach, чтобы сделать Get-ADGropuMember, чтобы найти всех пользователей, а затем Get-ADUser, чтобы получить все свойства, которые они просили. Проблема, с которой я сталкиваюсь, заключается в том, что к тому времени, когда я доберусь до самого конца, у меня больше нет исходной группы, которая вызвала необходимость выбора учетной записи пользователя. В принципе сценария я придумал до сих пор:Powershell Передача информации через трубопровод

Get-Content '.\Scripts - Input\ADGroupIn.Accounts.txt' | ForEach-Object { Get-ADGroupMember $_ -Recursive -Server Accounts | Get-ADUser -Properties SAMAccountName, Enabled, Name, Description, LastLogonDate, whenCreated | Select-Object SAMAccountName, Enabled, Name, Description, LastLogonDate, whenCreated | sort-object SAMAccountName} | Export-csv ".\Scripts - Output\SelectedGroups_Accounts.csv" -NoTypeInformation

«Администраторы домена» является именем группы считывания в Get-Content. Команда Get-ADGroupMember использует UserA, UserB и UserC. Затем Get-ADuser получает все свойства для каждого пользователя, но в это время я хочу добавить «Администраторы домена» к информации для каждого пользователя. Если я использую свойство MemberOf, я получу все группы, в которые пользователи входят, когда мне нужно показать, что это «Админы домена», которые помещают их в список.

Я не работал с Powershell очень долго и был бы признателен за любую помощь, которую вы можете мне дать.

ответ

0

попробовать этот

Get-Content '.\Scripts - Input\ADGroupIn.Accounts.txt' | ForEach-Object { 
    $group = $_ 
    Get-ADGroupMember $group -Recursive -Server Accounts | 
    Get-ADUser -Properties SAMAccountName, Enabled, Name, Description, LastLogonDate, whenCreated | 
    Select-Object SAMAccountName, Enabled, Name, Description, LastLogonDate, whenCreated, @{n='Group';e={$group}} | 
    sort-object SAMAccountName 
} | Export-csv ".\Scripts - Output\SelectedGroups_Accounts.csv" -NoTypeInformation 
+0

Из того, что я вижу, это решает проблему. благодаря – dougBelcher