Powershell获取Exchange 邮箱用户配额

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Powershell获取Exchange 邮箱用户配额相关的知识,希望对你有一定的参考价值。

客户场景:为很多用户单独配置过邮箱配额,想重新规划,现需要导致所有用户实际容量清单 实现方式:直接上代码

#加载Exchange命令
Add-PSSnapin Microsoft.ex*
#主命令
[array]$output = "" | Select Name,ProhibitSendQuota,DBName
$DBs = Get-MailboxDatabase | Select Name,ProhibitSendQuota
foreach ($DB in $DBs)
[string]$DBQuota = $DB.ProhibitSendQuota
[string]$DBName = $DB.Name
Write-Host "Database $DBName‘s quota is $DBQuota"
$Mails = Get-Mailbox -Database $DBName | Select Name,ProhibitSendQuota
foreach ($Mail in $Mails)
if ($Mail.ProhibitSendQuota -eq "Unlimited")
[string]$MailQuota = $DBQuota

else
[string]$MailQuota = $Mail.ProhibitSendQuota

$Temp = "" | Select Name,ProhibitSendQuota,DBName
$Temp.Name = $Mail.Name
$Temp.ProhibitSendQuota = $MailQuota
$Temp.DBName = $DBName
#$Temp

$output += $Temp



$output | Export-Csv MailQuota.csv -NoTypeInformation -Encoding UTF8
输出结果:
技术图片
与预期对比:
技术图片
结论:如果为用户配置了不限制容量,则不能正常获取(客户实际环境中仅为董事长有配置无限制,手动修正,符合客户需求),欢迎帮解决此bug

以上是关于Powershell获取Exchange 邮箱用户配额的主要内容,如果未能解决你的问题,请参考以下文章

Exchange 2007 邮箱权限(没有 Powershell Cmdlet)

Exchange 2013 统计邮箱容量-Powershell

Exchange server powershell cmdlet查看前40名邮箱用户的命令

无法通过 Exchange 2010 SP1 上的 PowerShell 删除邮箱权限

powershell Exchange:设置邮箱发送接收大小

Exchange 2013 的会议室邮箱用户一直无法正常登陆。