Dieses Skript funktioniert perfekt in PowerShell. Es kopiert alle Dateien mit einem bestimmten Typ. Aber ich möchte Dateien mit Ordnern & Unterordnern kopieren.
$dest = "C:\example"
$files = Get-ChildItem -Path "C:\example" -Filter "*.msg" -Recurse
foreach ($file in $files) {
$file_path = Join-Path -Path $dest -ChildPath $file.Name
$i = 1
while (Test-Path -Path $file_path) {
$i++
$file_path = Join-Path -Path $dest -ChildPath
"$($file.BaseName)_$($i)$($file.Extension)"
}
Copy-Item -Path $file.FullName -Destination $file_path
}
Frage: Wie kann ich mit Windows PowerShell 3.0 eine Ordnerstruktur von einem Laufwerk auf eine Netzwerkfreigabe kopieren und die ursprüngliche Struktur beibehalten?
Antwort: Verwenden Sie das Copy-Item
Cmdlet und geben Sie das –Container
geschalteter Parameter:
$sourceRoot = "C:\temp"
$destinationRoot = "C:\n"
Copy-Item -Path $sourceRoot -Filter "*.txt" -Recurse -Destination $destinationRoot -Container