I recently had to take a PST of recovered data and import it into someones mailbox:
Here is the syntax I used in my Exchange PowerShell session:
New-MailboxImportRequest JohnDoe@mycompany.com -FilePath "e:\temp\JohnDoe.pst" -IsArchive -BadItemLimit 10,000 -Name JohnDoeRecovery
Lets break down the non-obvious options.
In my specific example, this injects the items into their Exchange On-Line Archive.
My example was a data recovery exercise, so I expected a lot of corruption, this tells the server to keep going even if it finds a lot of bad items.
This allocates a friendly name to the task that we can use to see progress with this next command:
Get-MailboxImportRequest | Get-MailboxImportRequestStatistics
When everything is completed, you can get a measure of the bad items using the friendly name thus:
Get-MailboxImportRequest -Name JohnDoeRecovery | Get-MailboxImportRequestStatistics | Select FilePath, BadItemsEncountered, OverAllDuration, ItemsTransfered, BytesTransfered