Вот готовое решение PowerShell, которое должно делать то, что вы просите.Вам нужно отредактировать SourceDir, Dest и фильтр, чтобы получить файл или файлы, которые вы хотите.
$SourceDir = "C:\Source"
$Dest = "C:\Root"
$Files = gci -Path $SourceDir -Recurse -Filter "*.txt" |?{$_.Directory -ne $null}
$Index = ($Source.Length)
$SSFile = $UpdatedPath.Substring($Index)
$Index = $SSFile.LastIndexOf("\")
$ChildDir = $SSFile.Substring(0,$Index)
$Root = Dir -Path $Dest|?{$_.Directory -eq $null}
foreach ($File in $Files){
foreach ($Folder in $Root){
$FolderPath = $Folder.FullName
$DropPath = ("{0}{1}" -f$FolderPath, $ChildDir)
Copy-Item -Path $File.FullName -Destination $DropPath
}
}