it-swarm.com.de

Wie kopiere ich eine Verzeichnisstruktur, ohne Dateien zu kopieren?

Ich habe einen Ordner mit vielen Unterordnern und Dateien. Gibt es eine Möglichkeit, die Ordner- und Unterordner-Verzeichnisstruktur zu kopieren, ohne die darin enthaltenen Dateien mit cmd oder powershell zu kopieren?

43
Rook

Wenn Sie auch leere Ordner kopieren möchten.

xcopy C:\Ordner D:\Ordner/t/e

41
Michael Mantion

Jep. XCOPY

XCopy source {destination}  /t

beispiel

xcopy C:\Folders D:\Folders /t

weitere Informationen zu xcopy finden Sie hier http://ss64.com/nt/xcopy.html

28
BroScience

Obwohl XCOPY noch funktioniert, enthält Windows Vista und höher ROBOCOPY mit mehr Funktionen. Die allgemeine Syntax zum Kopieren eines Ordnerbaums (einschließlich leerer Ordner) ohne die Dateien lautet:

robocopy "A:\Source folder" "B:\Destination folder" /e /xf *

18
Theodore

PowerShell-Methode, bei der nicht jede Datei kopiert und anschließend gelöscht werden muss:

Copy-Item -LiteralPath '.\source' -Destination 'C:\path\to\copy' -Recurse -Filter {PSIsContainer -eq $true}

Oder prägnanter:

copy .\source C:\path\to\copy -r -fi PSIsContainer

Der einzig interessante Trick ist die Filterung der Eigenschaft PSIsContainer, die für Verzeichnisse, jedoch nicht für Dateien gilt.

2
Ben N

Schauen Sie sich die 47-Ordner-App an, ein kostenloses, praktisches Windows-Tool, das genau das tut, was Sie über die GUI von Nice benötigen.  enter image description here

WARNUNG: Der frühere Link ( http://47foldersapp.com/ ) führt jetzt (Nov 2017) zu Werbung für Kleidung. Die letzte gute Kopie von Internet Archive ist hier . Software ist möglicherweise immer noch auf Freeware-Download-Sites wie this one verfügbar.

1
andymcgregor

Verwenden Sie dazu PowerShell. Kopie des Ordners erstellen und dann Remove-Item -Path "C:\test\*.*" -recurse

0
user1586957

Ich habe gerade die Freeware Miroirs verwendet, die ganz einfach nur Ordner kopiert, nicht den Inhalt (obwohl das eine Option ist).

http://www.scanialabs.com/Products/Miroirs/Miroirs.aspx

0
user263693

Es gibt wahrscheinlich eine bessere Lösung, aber ich würde diese sehen:

  • Kopieren Sie alles und leeren Sie die Ordner mit einem Skript.

  • Erstellen Sie ein Skript, das alles kopiert, wenn es keine Erweiterung hat. Sofern Sie keine Dateien ohne Erweiterung in den Ordnern haben, die Sie nicht sollten, sollte es funktionieren, weil gut. Ordner haben keine Erweiterungen. Etwas, das im Pseudocode so aussehen würde:

open_directory ($ path);
while ($ file = get_directory_content) {
if (leer (get_file_extension ($ file))) {
copy_the_file ($ file, $ destination);
}
}
close_directory;

0
Ariane