你好,我只是不明白类似的东西在 powershell 中是如何工作的。
这一行给出 1 条记录:
Get-ADGroup -Filter {DistinguishedName -eq "CN=Development,CN=Users,DC=mycompany,DC=it"}
但是这个:
Get-ADGroup -Filter {DistinguishedName -like "*Development*"}
不返回任何内容。这是怎么回事?
最佳答案
可分辨名称不能与 LDAP 进行通配符匹配,-Filter
将在内部将其转换为通配符。
这就是为什么您看不到任何结果
您可以检索名称中包含“Development”的所有 OU 并搜索所有这些:
$ADGroups = @()
$DevOUs = Get-ADOrganizationalUnit -Filter {name -like "*ex*"}| Select-Object DistinguishedName
foreach($ou in $DevOUs)
{
$DN = $ou.DistinguishedName
foreach($Group in (Get-ADGroup -SearchBase $DN))
{
# Prevent duplicates
if($ADGroups -notcontains $Group)
{ $ADGroups += $Group }
}
}
关于Powershell Active Directory 类似过滤器如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25443474/