Need to export mailboxes from Exchange? Hate using exmerge to do so. Gone are the days of exmerge. Well, not entirely. But welcome to the days of New-MailboxExportRequest. Much longer and cooler command than exmerge ever thought about being.
C:\>New-MailboxExportRequest -Mailbox cedge -FilePath \\kryptedexchange.krypted.com\pst\cedge.pst
You then receive confirmation that the export has been queued:
Name Mailbox Status
---- ------- ------
MailboxExport https://krypted.com//Users/cedge... Queued
To view the status, swap New with Get (Get-MailboxExportRequest):
Get-MailboxExportRequest
The output is as follows:
Name Mailbox Status
---- ------- ------
MailboxExport https://krypted.com//Users/cedge... InProgress
To get even more info, use the -Name option with Get-MailboxExportRequest, identifying the actual process name.
Get-MailboxExportRequest -Name MailboxExport | fl
The output is as follows:
RunspaceId : xxxxxxx-aaaa-bbbb-cccc-zzzzzzzzz
FilePath : \\kryptedexchange.krypted.com\pst\cedge.pst
SourceDatabase : MB-HO-01
Mailbox : https://krypted.com//Company/Users/krypted
Name : MailboxExport
RequestGuid : aaaaaaaa-bbbb-cccc-dddd-000000000000
RequestQueue : AA-BB-02
Flags : IntraOrg, Push
BatchName :
Status : InProgress
Protect : False
Suspend : False
Direction : Push
RequestStyle : IntraOrg
OrganizationId :
Identity : https://krypted.com//Users/cedge\MailboxExport
IsValid : True
To check the progress of all mailbox export requests, pipe Get-MailboxExportRequest into Get-MailboxExportRequestStatistics:
C:\>Get-MailboxExportRequest | Get-MailboxExportRequestStatistics
The output shows the completion percentage of each process Name:
Name Status SourceAlias PercentComplete
---- ------ ----------- ---------------
MailboxExport InProgress cedge 20
To clear completed requests:
C:\>Get-MailboxExportRequest | where {$_.status -eq "Completed"} | Remove-MailboxExportRequest