An almost mandatory skill for Exchange administrators to understand is how to export mailboxes using the Exchange Management Shell. Maybe you need to export a mailbox to a PST for retention purposes or possibly migrate the mailbox to a different environment. Whatever the reason, knowing this skill from the EMS will simplify the task and allow you to script the work.
[PS] C:\>New-ManagementRoleAssignment -Role "Mailbox Import Export" -User adminuser
[PS] C:\>New-MailboxExportRequest -Mailbox usermailbox -FilePath "\\servername\share\file"
It’s important to note that the file path for the export is a network share. The command doesn’t support exporting to a local path. This is because the export process is executed by the CAS role and if you have multiple client access servers, it could be executed by any one of them. So be sure that you set up a share somewhere that all the client access servers can access.
[PS] C:\>New-MailboxExportRequest -Mailbox douglas.fargo -FilePath "\\ex13\PSTExport\douglas_fargo.pst"
[PS] C:\>Get-MailboxExportRequest

[PS] C:\>Get-mailboxExportRequest | Get-MailboxExportRequestStatistics | FL
[PS] C:\>Get-MailboxExportRequest | Where {$_.Status -eq "Completed"} | Remove-MailboxExportRequest
[PS] C:\>New-MailboxExportRequest -Mailbox usermailbox -ContentFilter {(Received -ge "startDate") -and (Received -lt "endDate")} -FilePath "\\servername\share\file"
[PS] C:\>New-MailboxExportRequest -Mailbox usermailbox -SourceRootFolder "Sent Items" -FilePath "\\servername\share\file"
With the different parameters and the content filters, you can have a very powerful command for exporting mailboxes to PST. Here is more info on the CMDlet we are using. In my opinion, the best part is the ability to use the command in a script to perform exports on multiple mailboxes. It cuts down on the amount time it takes to perform these tasks.