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
更快。性能将取决于您的广告大小和目标组中的成员数量。
我需要使用以下信息进行广告导出: - 全部启用不在特定组中的用户 - 电子邮件地址 - 账户名
并将所有内容导出到 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
.
Get-ADUser
利用过滤器仅查询启用的用户。请注意,您必须添加 Mail
属性,因为电子邮件地址属性不在默认显示中。您可以调整此过滤器以使查询更快。如果您愿意增加一点复杂性并进行性能测试,构建单独的 Get-ADUser -Filter ...
查询可能比依赖 Where-Object
更快。性能将取决于您的广告大小和目标组中的成员数量。