Hi All,
I have the following script I am using to import PST files into Exchange2013 before moving the mailbox to O365. Needs to be done this way for company reasons
The problem is that the loop I have to check if the files have been uploaded never quits and just keeps running.
What am I missing?
write-host"Uploading PST Files"
$Session=New-PSSession-ConfigurationNameMicrosoft.Exchange-ConnectionUrixxxx-AuthenticationKerberos
Import-PSSession$Session
foreach($pstuserin$pstusers)
{
$a=Get-Date
write-host"Started at "$a
New-MailboxImportRequest -Mailbox$pstuser.alias -name $pstuser.batch -FilePath $pstuser.path -targetrootfolder "Archive PST"-baditemlimit 1000 -acceptlargedataloss -largeitemlimit 1000
}
While($moveRequests=Get-Mailboximportrequest) {
foreach($moveRequestin$moveRequests) {
$a=get-date
Write-Host
Write-Host$a-ForegroundColorYellow
get-mailboximportrequest -status"Completed"| remove-mailboximportrequest -confirm:$false-warningaction"SilentlyContinue"
get-mailboximportrequest -status"Failed"| get-mailboximportrequeststatistics -includereport | format-list>>$PSTfailures
get-mailboximportrequest -status"Failed"| remove-mailboximportrequest -confirm:$false-warningaction"SilentlyContinue"
get-mailboximportrequest -status"InProgress"| get-mailboximportrequeststatistics| Sort-ObjectPercentComplete-Descending|ft-auto
Start-Sleep300
}
}
}
}