?
Solved

exchange 2007 mailbox size

Posted on 2011-09-02
5
Medium Priority
?
599 Views
Last Modified: 2012-05-12
Hi,
I am trying to get a report that will list all the mailboxes that are less than 10 GB.  I've used the following command but is gives me a lot of information that I do not need and it lists them by Byte size not GB.

get-mailbox |get-mailboxstatistics | export-csv test.csv| sort-object totalitemsize -descending |ft DisplayName,@{label="TotalItemSize(MB)";expression={$_.TotalItemSize.Value.ToMB()}},ItemCount

0
Comment
Question by:annayeg
5 Comments
 
LVL 23

Expert Comment

by:Suliman Abu Kharroub
ID: 36476764
You ccan use this :

Get-MailboxStatistics | export-csv test.csv | where {$_.ObjectClass -eq "Mailbox"} | Sort-Object TotalItemSize -Descending | ft DisplayName,TotalItemSiza,ItemCount,StorageLimitStatus

and arrange them using excel  to remove mailboxes larger then 10 GB
0
 
LVL 4

Expert Comment

by:ontech
ID: 36477643
I agree with Suliman.

For more details on powershell commands
Go get it at http://go.microsoft.com/?linkid=5719336
0
 
LVL 49

Accepted Solution

by:
Akhater earned 2000 total points
ID: 36477651
the below code will do what you want and will show the output in GB

in the line "$mbxSize -lt 10" replace the 10 by any number if you want another threshold in GB


$mbxs = get-mailbox -resultsize unlimited

$all = @()

foreach ($mbx in $mbxs){

  
  $mbxStat = get-MailboxStatistics -identity $mbx

  $mbxSize = $mbxStat.TotalItemSize.Value.toGB()
       
  if ($mbxSize -lt 10){
     
     $out = new-object psobject 

     $out | add-member noteproperty Identity $mbx.name
     $out | add-member noteproperty Database $mbx.database
     $out | add-member noteproperty MailboxSize $mbxSize

     $all += $out
   }

   
   
} 

$all = $all | Sort-Object MailboxSize -Descending

$all | export-csv c:\list.csv

Open in new window

0
 
LVL 1

Author Comment

by:annayeg
ID: 36490475
Hi guys,

I tried pasting the above code in a notepad and rename it mailboxsize.ps2, but when I run it from EMS it opens up the code.
Is there anything that I need to paste in the script?

Thanks
0
 
LVL 49

Expert Comment

by:Akhater
ID: 36491433
it should be .ps1 and not .ps2
0

Featured Post

A Cyber Security RX to Protect Your Organization

Join us on December 13th for a webinar to learn how medical providers can defend against malware with a cyber security "Rx" that supports a healthy technology adoption plan for every healthcare organization.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Measuring Server's processing rate with a simple powershell command. The differences in processing rate also was recorded in different use-cases, when a server in free and busy states.
Transferring FSMO roles is done when an admin wants to split roles between certain Domain Controllers or the Domain Controller holding the Roles has been forcefully demoted using dcpromo / forceremoval
To show how to create a transport rule in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Mail Flow >> Rules tab.:  To cr…
The video tutorial explains the basics of the Exchange server Database Availability groups. The components of this video include: 1. Automatic Failover 2. Failover Clustering 3. Active Manager
Suggested Courses

862 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question