Ich habe zwei Verzeichnisstrukturen mit Unterordnern und Dateien. Ich möchte alle Dateien löschen, die Duplikate im zweiten Verzeichnis sind. Und entfernen Sie alle leeren Ordner im zweiten Verzeichnis. Ich denke, ich habe das Piping-Setup richtig eingerichtet, ich bin mir nicht sicher, wie ich die Dateien entfernen soll und wenn der Ordner leer ist, den Ordner. Das Problem scheint zu sein, dass ich die Ordnerstruktur der Datei, die ein Duplikat im Befehl remove war, nicht feststellen kann.Wie zwei Verzeichnisse zu vergleichen und dann alle doppelten Dateien im zweiten Verzeichnis zu löschen
$Folder1 = Get-ChildItem -Path C:\Temp\Folder1 -Recurse
$Folder2 = Get-ChildItem -Path C:\Temp\Folder2 -Recurse
Compare-Object -ReferenceObject $Folder1 -DifferenceObject $Folder2 -IncludeEqual |
Where-Object {$_.SideIndicator -eq "=="} |
ForEach-Object {
Remove-Item "$($_.FullName)"
}
Warum nicht 'robocopy' verwenden? –