带过滤器的 Get-ADGroup 不适用于所有人

Get-ADGroup with filter isn't working for all

我的 powershell 脚本有问题,我需要从组中获取所有用户,我有可用于获取组的组 ID。我遇到的问题是我的解决方案并不适用于所有小组,而且我也不知道哪里出了问题。

我有一些群名 eAM
eGR
eTE
eDF
eMP-艺术
电子简历

前 3 个不起作用,另一个起作用。这里我使用的脚本

$like = "*" + $branch
foreach ($member in (Get-ADGroupMember (Get-ADGroup -filter {name -like $like}))){
    # Do something
}

我得到的错误不起作用
Get-ADGroupMember:无法在 «Microsoft.ActiveDirectory.Management.ADGroup», requiered by «Identity» param. The specified method is not supported + Get-ADGroupMember (Get-ADGroup -filter {name -like "*AM"}) + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument : (:) [Get-ADGroupMember], ParameterBindingException + FullyQualifiedErrorId : cannotConvertArgument,Microsoft.ActiveDirectory.Management.Commands.GetADGroupMember

中转换 «System.Object[]»

在此先感谢您的帮助, 马来西亚

该错误提示您 Get-ADGroupMember 不接受组数组,而是单个组。如果 Get-AdGroup 不会 return 任何结果,您也会收到错误消息。相反,管道命令:

Get-ADGroup -Filter {name -like $like} | Get-ADGroupMember | Foreach-Object {
}

请注意,帐户可以属于多个组,因此同一成员可以 returned 多次。