estrutura inesperada ao copiar pastas no Windows Powershell

Eu tenho um conjunto de projetos que envolvem uma mistura de arquivos específicos do projeto mais arquivos comuns. Estou tentando copiar o conteúdo de duas pastas diferentes - uma pasta específica do projeto e uma pasta comum - em uma única pasta chamada para o projeto. Também quero manter as hierarquias de pastas das pastas originais.

Por exemplo, alguns caminhos para os arquivos comuns:

src\Common\PackageAssets\logo1.jpg
src\Common\PackageAssets\logo2.jpg

E exemplos de caminhos para arquivos específicos do projeto:

src\Projects\ProjectA\PackageFiles\readme.txt
src\Projects\ProjectA\PackageFiles\scale-100\projA.png

O resultado desejado após a cópia seria:

bld\ProjectA\pkgFiles\logo1.png
bld\ProjectA\pkgFiles\logo2.png
bld\ProjectA\pkgFiles\readme.txt
bld\ProjectA\pkgFiles\scale-100\projA.png

O que estou usando é o seguinte:

[string]$pkgContentPath = "bld\$project\pkg_contents"

# copy common files
Copy-Item -Path .\src\Common\PackageAssets -Recurse -Destination $pkgContentPath
# copy project-specific files
Copy-Item -Path .\src\Projects\ProjectA\PackageFiles\ -Recurse -Destination $pkgContentPath

Mas, em vez dos resultados esperados, todos os arquivos estão terminando em um nível extra de subpasta:

bld\ProjectA\pkgFiles\PackageAssets\logo1.png
bld\ProjectA\pkgFiles\PackageAssets\logo2.png
bld\ProjectA\pkgFiles\PackageFiles\readme.txt
bld\ProjectA\pkgFiles\PackageFiles\scale-100\projA.png

Estou perplexo. Não consigo descobrir como me livrar da camada extra da subpasta. Tentei usar a tubulação Get-ChildItem para Copy-Item, mas as hierarquias das subpastas foram perdidas.

Em um arquivo .bat, isso funciona:

xcopy src\Common\PackageAssets\* bld\%project\pkg_contents /s
xcopy src\Projects\%project\PackageFiles bld\%project\pkg_contents /s

Acho que poderia usar o xcopy, mas certamente deve haver uma maneira de fazer isso usando cmdlets.

questionAnswers(1)

yourAnswerToTheQuestion