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

PowerShell导出多OU下Proxyaddresses属性到CSV时报错如何解决

问题原因及修复方案

你遇到的输出为对象类型名的问题,核心原因是代码中计算属性里使用了全角弯引号’,PowerShell无法正确识别该符号作为引号边界,导致自定义的表达式没有执行,直接输出了proxyAddresses属性本身的集合对象类型名。

另外代码还有两处可优化项,避免后续出错:

  • 不要使用-Properties *加载所有AD用户属性,仅加载你需要的proxyAddresses即可,大幅提升查询效率,降低域控制器压力
  • 增加空值判断,避免部分未配置proxyAddresses的用户触发调用报错
  • 新增编码参数避免导出CSV出现乱码
修正后可用代码
"ou=no gpo,ou=Staff, ou=offices,dc=ddddd,dc=ca",
"ou=Staff win10,dc=ddddd,dc=ca" | ForEach-Object {
    Get-ADUser -Filter * -SearchBase $_ -Properties proxyAddresses
} | Select-Object name, @{
    Name='proxyAddresses'
    Expression={
        if ($null -ne $_.proxyAddresses) {
            [string]::Join(";", $_.proxyAddresses)
        } else {
            ""
        }
    }
} | Export-Csv c:\temp\all_proxyaddresses.csv -NoTypeInformation -Encoding UTF8

如果导出后仍有中文乱码,可将-Encoding UTF8替换为-Encoding Default使用系统默认编码导出。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 02:36:03