Powershell 如何检查OU中的所有组是否已启用成员

Powershell 如何检查OU中的所有组是否已启用成员,powershell,active-directory,Powershell,Active Directory,我需要将OU中的所有组分为两组。一个已启用成员,另一个未启用成员。有什么简单的方法可以做到这一点吗 我目前使用: $results = foreach ($OU in $OUs) { get-adgroup -SearchBase $OU -filter {Name -like '*'} -properties CanonicalName,CN,Description,ManagedBy,member,memberof,members | select Canonical

我需要将OU中的所有组分为两组。一个已启用成员,另一个未启用成员。有什么简单的方法可以做到这一点吗

我目前使用:

$results = foreach ($OU in $OUs) {
    get-adgroup -SearchBase $OU -filter {Name -like '*'} -properties CanonicalName,CN,Description,ManagedBy,member,memberof,members |
        select CanonicalName,CN,Description,ManagedBy,member,memberof,members
}

抓住一切,但我不知道如何将他们按成员进行隔离。

到目前为止,你都做了哪些尝试?您可以使用Get Aduser搜索特定的OU。然后,您可以使用条件语句来拼接活动用户和非活动用户。对我来说,最简单的方法是使用
$Results.Where({$\uu0.Enabled})
来构建具有启用帐户的第二个列表,并使用
-not$\u0.Enabled
将禁用的帐户添加到第三个列表中。这需要对账户进行两次过滤,但只要账户数量不是很大,otta的过滤速度就会很快。[grin]您是在寻找绝对没有活动用户的组,然后是一些可能有活动用户但也有禁用用户的组。@Lee_Dailey如果我不尝试查看组本身是否启用或禁用,这是否仍然有效,但是这些组的成员是启用的还是禁用的?@I.tdelinequent我希望将其按没有活动用户的组和有活动用户的组分开。到目前为止,您尝试了什么?您可以使用Get Aduser搜索特定的OU。然后,您可以使用条件语句来拼接活动用户和非活动用户。对我来说,最简单的方法是使用
$Results.Where({$\uu0.Enabled})
来构建具有启用帐户的第二个列表,并使用
-not$\u0.Enabled
将禁用的帐户添加到第三个列表中。这需要对账户进行两次过滤,但只要账户数量不是很大,otta的过滤速度就会很快。[grin]您是在寻找绝对没有活动用户的组,然后是一些可能有活动用户但也有禁用用户的组。@Lee_Dailey如果我不尝试查看组本身是否启用或禁用,这是否仍然有效,但是这些组的成员是启用还是禁用的?@I.tdelinequent我希望将其按没有活动用户的组和有活动用户的组分开。