title: Move-Item -Exclude -Recursive Is Not leaving excluded items in place within sub directories
body: <p>I'm trying to move all items except a certain type of file.  In this case *.msg.  It does fine if the excluded file resides within the parent folder.  However, the moment that same type of file is located within a subdirectory, it fails to leave the file in place and instead moves it to the new location.</p>
  
  <pre><code>username = Get-Content '.\users.txt'
  foreach ($un in $username)
  {
    $destA = "c:\users\$un\redirectedfolders\mydocuments"
    $destB = "c:\users\$un\redirectedfolders\desktop"
    $sourceA = "C:\users\$un\mydocuments"
    $sourceB = "C:\users\$un\desktop"
  
    New-Item -ItemType Directory -Path $destA, $destB
  
    Get-ChildItem $sourceA -Exclude '*.msg' -Recurse | Move-Item -Destination {Join-Path $destA $_.FullName.Substring($sourceA.length)}
    Get-ChildItem $sourceB -Exclude '*.msg' -Recurse | Move-Item -Destination {Join-Path $destB $_.FullName.Substring($sourceB.length)}
  }
  </code></pre>