Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I would like to do as I used to be able to do with Exmerge with older versions of Exchange.

Basically, I need to be able to find messages that are older than a certain date, export those messages to a PST file and then delete them from the mailbox.

Is there a way to do this using the Exchange Powershell?

Any help appreciated


share|improve this question
up vote 6 down vote accepted

As of Exchange 2007, you've been able to do this via powershell commands, e.g. Export-Mailbox and as of 2010 that's been your only (built in, at least) option..

Microsoft changed the powershell commands for Exchange 2010 SP1, and you should now use New-MailboxExportRequest to export data from a mailbox to a .pst file. I've given an example below.

Rather than attempt to summarise the arguments for the command, I'll simply point you at the Microsoft documentation for any further detail (this is also where I got the example below from).

New-MailboxExportRequest -Mailbox Tony -ContentFilter {(body -like "*company*") -and (body -like "*profit*") -and (Received -lt "01/01/2010")} -FilePath "\\SERVER\PSTFileShare\Tony_CompanyProfits.pst"
share|improve this answer
Thanks. Is there a switch to delete the mail from the mailbox once it has been exported? – fdf33 Dec 8 '11 at 0:09

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.