Get-MailboxFolderStatistics导出仅显示数字,如何同步导出对应邮箱地址
调整后的PowerShell脚本及说明
你当前脚本的问题有两点:一是未将邮箱地址和文件夹计数绑定输出,二是当Get-MailboxFolderStatistics无返回结果时,无对应内容输出导致对应邮箱行缺失,同时你当前用Out-File追加格式化文本的方式也无法生成标准的CSV文件。
修改后的脚本如下:
$users = Get-Content "c:\temp\user-list.txt" $exportData = @() foreach ($user in $users) { $folderStat = Get-MailboxFolderStatistics -Identity $user -ErrorAction SilentlyContinue $exportData += [PSCustomObject]@{ 邮箱地址 = $user 文件夹数量 = $folderStat.Count } } $exportData | Export-Csv -Path "C:\emails.csv" -Encoding UTF8 -NoTypeInformation
调整点说明
- 新增结构化的自定义对象,固定包含「邮箱地址」「文件夹数量」两个字段,就算邮箱无任何文件夹,也会保留该行,文件夹数量显示为0
- 改用PowerShell原生的
Export-Csv命令导出标准CSV文件,自带表头,打开后可直接查看每个邮箱对应的数据 - 新增
-ErrorAction SilentlyContinue参数,避免邮箱不存在、无权限等异常打断执行
调整后导出的CSV会包含和user-list.txt中一一对应的10行数据,直接筛选文件夹数量为0的条目即可定位到被跳过的邮箱。
内容的提问来源于stack exchange,提问作者Thijs Driesen
相关产品推荐
相关产品推荐

