You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell导出AD组到CSV时Members显示ADPropertyValueCollection问题

解决AD组导出CSV时Members列显示类型名的问题

问题原因

Get-ADGroup返回的Members属性是Microsoft.ActiveDirectory.Management.ADPropertyValueCollection类型的集合对象,Export-Csv仅能序列化字符串或基础数据类型,无法直接解析集合对象,因此导出时会输出对象类型名称而非实际成员内容。

解决方法

需要将Members集合转换为可读的字符串格式,以下提供两种常用方案:

方案1:直接拼接成员的DistinguishedName(高效)

这种方法直接将成员的DN用分隔符拼接成字符串,无需额外AD查询,执行速度快:

# 设置输出路径和文件名
$directoryandfilename = Read-Host -Prompt 'Enter directory and file name for output - Example - C:\Control\Test\Test.csv'

# 查询AD组并转换Members为字符串
Get-ADGroup -Filter * -SearchBase "OU=Name,OU=Name,DC=DCName,DC=Name,DC=Name,DC=Name,DC=Name" -Properties Members | 
    Select-Object DisplayName,
        @{Name='Members'; Expression={$_.Members -join ';'}},  # 用分号拼接成员DN,可替换为逗号等分隔符
        DistinguishedName | 
    Sort-Object DistinguishedName | 
    Export-Csv $directoryandfilename -NoTypeInformation

注:DisplayName和DistinguishedName是Get-ADGroup的默认返回属性,无需通过-Properties指定;避免使用-Properties *,它会返回所有属性,增加AD查询负载,建议只指定需要的属性(如这里的Members)。

方案2:获取成员的显示名称(更易读)

如果需要成员的DisplayName而非DN,需逐个查询每个成员的属性,适合对可读性要求高的场景:

# 设置输出路径和文件名
$directoryandfilename = Read-Host -Prompt 'Enter directory and file name for output - Example - C:\Control\Test\Test.csv'

# 查询AD组并获取成员显示名称
Get-ADGroup -Filter * -SearchBase "OU=Name,OU=Name,DC=DCName,DC=Name,DC=Name,DC=Name,DC=Name" -Properties Members | 
    ForEach-Object {
        # 遍历成员,获取每个成员的DisplayName
        $memberNames = $_.Members | ForEach-Object {
            (Get-ADObject $_ -Properties DisplayName).DisplayName
        }
        # 构造自定义对象
        [PSCustomObject]@{
            DisplayName = $_.DisplayName
            Members = $memberNames -join ';'
            DistinguishedName = $_.DistinguishedName
        }
    } | 
    Sort-Object DistinguishedName | 
    Export-Csv $directoryandfilename -NoTypeInformation

注:此方案会发起额外的AD查询,若组数量多、成员量大,执行速度会变慢。

内容的提问来源于stack exchange,提问作者NuckinFutz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 10:05:36