powershell - get-adgroupmember 不一致地返回组成员
问题描述
从 powershell 2 开始我就一直在写 powershell,我遇到了一些我以前从未见过的奇怪的东西。
$groups = get-adgroup -filter {name -like 'SomeGroup*'} | select name | sort name
foreach ($group in $groups){
$groupsid = $group.name
write-host $groupsid
Get-ADGroupMember $groupsid | select name | sort name
write-host "`n`n"
}
循环中仅枚举某些组中get-adgroupmember
的成员,而不是其他组中的成员。foreach
如果"$groupsid" = "DeveloperGroup"
我
get-adgroupmember DeveloperGroup | select name | sort name
在 shell 中使用,那么我会得到我期望看到的内容:组成员列表。foreach
但是对于第一行列举的几个组,当在循环中执行完全相同的 cmdlet 时,我什么也得不到。我知道一些 cmdlet 仍然有点问题,只是不知道为什么这在循环决定获取的内容中是断断续续的。
解决方案
@Doug Maurer 评论很有帮助,可能是问题的一部分。
另一个问题:避免使用组名。或者直接使用组对象作为Get-ADGroupMember
cmdlet 的输入,如下所示,或者使用DistinguishedName
组的属性。
foreach ($group in $groups){
Get-ADGroupMember $group | select name | sort name
write-host "`n`n"
}
推荐阅读
- python - 我正在尝试为 gimp 开发一个插件,但无法显示
- java - 通过 REST 提交 EMR Yarn 应用程序
- c# - 使用 EPPlus 将动态查询结果导出到 Excel
- python - Matplotilb - 如何为具有对数刻度的线图设置颜色条
- editor - 如何在 Sublimtext3 上定义的符号后缩进
- android - 在具有特定设计的 EditText 中放置标签
- c++ - 读取包含 SAFEARRAY 的 UDT 的 SAFEARRAY
- extjs - 如何解决“TypeError:Ext.getCmp(...).setReadOnly 不是函数”
- java - 无法使用 docker 运行 Spring Boot 应用程序
- laravel - 如果今天的日期在 laravel 的开始日期和结束日期之间,我如何在视图中显示单个数据?