gpt4 book ai didi

powershell - 获取特定 OU 及其子 OU 中的用户计数

转载 作者:行者123 更新时间:2023-12-02 23:57:32 25 4
gpt4 key购买 nike

我正在寻找一个 PowerShell 脚本,它可以帮助我:

  1. OU 的名称
  2. 每个OU 中 AD 用户的数量。

我发现了这个:

(Get-ADUser -Filter * -SearchBase “ou=Users,ou=A1,dc=contoso,dc=com”).count

这正是我想要的,但我必须输入每个 OU 名称。问题是我们有 100 多个 OU。我想要运行此程序的特定 OUcmsg\users 下的 contoso.com\cmsg\users ,其中 100+ OU 的 驻留。

最佳答案

我建议你从另一个角度来看待这个问题。每个广告用户都包含有关其父容器的信息。因为您已经返回了所有用户。让我们用它来确定计数。需要注意的是,如果您有无用户的 OU,它们将不会显示在结果中。

Get-ADUser -Filter * -Properties CN | 
Select-Object @{Label='ParentContainer';Expression={$_.Distinguishedname -replace "CN=$($_.cn),"}} |
Group-Object -Property ParentContainer |
Select-Object Name,Count

您当然仍然可以使用-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
}
}

关于powershell - 获取特定 OU 及其子 OU 中的用户计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32484212/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com