首页 > 解决方案 > 如何使此组过滤脚本仅适用于活动用户

问题描述

我想知道是否可以将此脚本更改为仅适用于活动用户的脚本?

import-module ActiveDirectory
Start-Transcript -Path "C:\test\teetest.txt"
$groups = Get-ADGroup -filter {(name -like "runners*") -or (name -like "helpers*")
foreach($group in $groups)
{
    $countUser = (Get-ADGroupMember $group.DistinguishedName).count
    Write-Host "The group $($group.Name) has $countUser user(s)."
}
Stop-Transcript

任何帮助,将不胜感激。

标签: powershell

解决方案


如果我正确理解您的问题并且活跃用户是指至少有 1 个成员(即大于 0)的组。您可以使用Where-Objectcmdlet 过滤掉结果。像这样:

$groups = Get-ADGroup -filter {(name -like "runners*") -or (name -like "helpers*") -Properties Members | Where-Object { $_.Members.Count –gt 0 }

推荐阅读