Периодическое снятие статистики почтовых баз является одной из обязательных операций по поддержке почтовой организации. Наткнулся в интернете на пару отличных скриптов для проведения этой операции. После небольшой доработки получается следующее.
Вывод на экран информации по количеству почтовых ящиков в базах сервера MailServer, отсортированных по имени баз:
Get-MailboxDatabase | Where-Object {$_.Server -eq "MailServer"} | Select Server,
StorageGroupName, Name, @{Name="Number Of Mailboxes";expression={(Get-Mailbox
-Database $_.Identity | Measure-Object).Count}} | Sort -Property Name |
Format-Table -AutoSize
Вывод на экран информации по размеру баз и количеству почтовых ящиков в них, отсортированный по имени баз, выглядит следующим образом:
Get-MailboxDatabase | Where-Object {$_.Server -eq "MailServer"} | Select Identity,
@{Name="Size (GB)";Expression={$objitem = (Get-MailboxDatabase $_.Identity); $path = "``" +
$objitem.server + "`" + $objItem.EdbFilePath.DriveName.Remove(1).ToString() + "$"+
$objItem.EdbFilePath.PathName.Remove(0,2); $size = ((Get-ChildItem $path).length)/1048576KB;
[math]::round($size, 2)}}, @{Name="No. Of Mbx";expression={(Get-Mailbox
-Database $_.Identity | Measure-Object).Count}} | Sort -Property Identity |
Format-table -AutoSize
Для вывода в файл вместо Format-Table можно использовать Export-Csv.