Powershell Active Directory从我的AD群组中获取所有用户

时间:2017-01-18 10:33:51

标签: powershell active-directory

我尝试了一段时间来创建一个包含以下内容的csv文件: “群组名称”,“SamAccountName”

其中GroupName是组的名称abd SamAccountName是属于该组的用户的名称。

我试试这个:

Get-ADUser -Filter * -Properties DisplayName,memberof | % {
 $Name = $_.DisplayName
 $_.memberof | Get-ADGroup | Select @{N="User";E={$Name}},Name
} | Export-Csv -NoTypeInformation -Encoding UTF8 -delimiter "," "All_Users_With_All_Their_Groups.csv"

然而它不能像我想的那样工作。

我尝试谷歌很多例子,但我觉得并不是很简单,因为我找不到一些相关的例子。

你有什么想法吗?

2 个答案:

答案 0 :(得分:0)

这应该做你的工作:

Import-Module ActiveDirectory ;
Get-ADGroup -Filter {name -like "*Your Group Name*"} -Properties Description,info | Select Name,samaccountname | Export-Csv D:\output.csv -NoTypeInformation
Get-ADGroupMember YourGroupName # to list members ;

答案 1 :(得分:0)

我创造了两种方式,不管你想要哪种方式

get-aduser -Filter * -Properties memberof |
%{[pscustomobject]`
@{'Groups Names'=$(($_.memberof | Get-ADGroup).name -join "," );
User=$($_.samaccountname)}}|
Export-Csv -NoTypeInformation -Encoding UTF8 -Delimiter ',' "output.csv"


Get-ADGroup -Filter * -Properties members | 
%{[pscustomobject]@{'Group'=$($_.name);
'Members'=$(($_.members | Get-ADUser).samaccountname -join ",")}} | 
Export-Csv -NoTypeInformation -Encoding UTF8 -Delimiter ',' "output.csv"