PowerShell 导出不在特定组 + 属性中的 AD 用户

PowerShell export AD users not in specific group + attributes

我需要使用以下信息进行广告导出: - 全部启用不在特定组中的用户 - 电子邮件地址 - 账户名

并将所有内容导出到 csv 文件

你能帮帮我吗?

谢谢!!!!

您可以执行以下操作:

$group = 'my group name'
$GroupMembers = Get-ADGroupMember $group -Recursive
Get-ADUser -Filter "Enabled -eq '$true'" -Properties Mail |
    Where-Object { $_.SamAccountName -notin $GroupMembers.SamAccountName } |
        Select-Object SamAccountName,Mail | 
            Export-Csv Output.csv -NoType

Get-ADGroupMember-Recursive 开关将递归检索属于 $group.

成员的 AD 对象

Get-ADUser 利用过滤器仅查询启用的用户。请注意,您必须添加 Mail 属性,因为电子邮件地址属性不在默认显示中。您可以调整此过滤器以使查询更快。如果您愿意增加一点复杂性并进行性能测试,构建单独的 Get-ADUser -Filter ... 查询可能比依赖 Where-Object 更快。性能将取决于您的广告大小和目标组中的成员数量。