The*_*tor 7 powershell active-directory
我正在寻找一个能让我获得的PowerShell脚本:
OU'sOU.我发现了这个:
(Get-ADUser -Filter * -SearchBase “ou=Users,ou=A1,dc=contoso,dc=com”).count
Run Code Online (Sandbox Code Playgroud)
这正是我想要的,但我必须输入每个OU名字.问题是我们有100多个OU's.具体OU我想要运行它是contoso.com\cmsg\users 在cmsg\users100+ OU's所在的地方.
我建议你从另一个角度来看待这个问题。每个广告用户都包含有关其父容器的信息。因为您已经返回了所有用户。让我们用它来确定计数。需要注意的是,如果您有无用户的 OU,它们将不会显示在结果中。
Get-ADUser -Filter * -Properties CN |
Select-Object @{Label='ParentContainer';Expression={$_.Distinguishedname -replace "CN=$($_.cn),"}} |
Group-Object -Property ParentContainer |
Select-Object Name,Count
Run Code Online (Sandbox Code Playgroud)
当然你仍然可以使用-SearchBase来缩小范围Get-ADUser。
如果这不是您想要的,您的下一个解决方案将需要Get-ADOrganizationalUnit的输出。
$ous = Get-ADOrganizationalUnit -Filter * -SearchBase "ou=Users,ou=CMSG,dc=contoso,dc=com" | Select-Object -ExpandProperty DistinguishedName
$ous | ForEach-Object{
[psobject][ordered]@{
OU = $_
Count = (Get-ADUser -Filter * -SearchBase "$_").count
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
57545 次 |
| 最近记录: |