【问题标题】:Command to List Users From Multiple AD Groups WITH Each Group Name使用每个组名列出来自多个 AD 组的用户的命令
【发布时间】:2018-11-17 02:31:21
【问题描述】:

我正在尝试获取 AD 组成员列表,其中每个组的成员分别列出。我可以列出所有组的所有成员,但是如何区分每个组的成员?

这就是我正在运行的:

get-ADGroup -Server "<server_name>" -filter {Name -like  "*<common_text_in_each_group's_name*"} | get-ADGroupMember

不幸的是,我试图在单行中执行此操作,因为当我尝试创建一个 ps1 文件并运行它时,我收到一个错误,它无法在我的本地计算机登录的域中找到组。即, -Server 参数不起作用。所有组都与我运行 PS 的机器位于不同的域中。

当我尝试创建一个 script/ps1 文件时,我尝试过:

$Groups = (Get-AdGroup -server '<server_name>' -filter * | Where {$_.name -like "*_some_text*"} | select name -expandproperty name)


$Table = @()

$Record = [ordered]@{
"Group Name" = ""
"Name" = ""
"Username" = ""
}



Foreach ($Group in $Groups)
{

$Arrayofmembers = Get-ADGroupMember -identity $Group | select name,samaccountname

foreach ($Member in $Arrayofmembers)
{
$Record."Group Name" = $Group
$Record."Name" = $Member.name
$Record."UserName" = $Member.samaccountname
$objRecord = New-Object PSObject -property $Record
$Table += $objrecord

}

}

$Table | export-csv "C:\temp\x_Groups.csv" -NoTypeInformation

【问题讨论】:

    标签: powershell active-directory


    【解决方案1】:

    我相信您也只需要将-Server 参数传递给Get-ADGroupMember

    $Arrayofmembers = Get-ADGroupMember -identity $Group -server '<server_name>' | select name,samaccountname
    

    这样有点傻。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-14
      • 1970-01-01
      相关资源
      最近更新 更多