Wie kopiere ich eine Verzeichnisstruktur, ohne Dateien zu kopieren?


47

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 mithilfe von cmd oder Powershell zu kopieren?

Antworten:


45

Wenn Sie auch leere Ordner kopieren möchten.

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


1
richtig, /esollte auch verwendet werden.

1
XCOPY Powershell ist standardmäßig integriert und funktioniert einwandfrei.
BenCes

29

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


5
Sie sollten hinzufügen, /eum auch leere Ordner zu kopieren

18

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 *


3

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 hierbei ist die Filterung der PSIsContainerEigenschaft, die für Verzeichnisse, jedoch nicht für Dateien gilt.


Das geht auch super schnell!
Regmi

1

Schauen Sie sich die 47folders-App an, ein kostenloses, handliches Windows-Tool, das genau das tut, was Sie über eine nette GUI benötigen. Bildbeschreibung hier eingeben

WARNUNG: Der frühere Link ( http://47foldersapp.com/ ) führt jetzt (November 2017) zu Werbung für Kleidung. Die letzte gute Kopie von Internet Archive ist hier . Software ist möglicherweise noch von Freeware-Download-Sites wie dieser erhältlich .


0

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. Es sei denn, Sie haben Dateien ohne Erweiterung in den Ordnern, 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;


Leider haben wir Dateien ohne Endung. Von Platzhaltern für Code-Repos zu bestimmten Datendateien.
Turm

Oh. Gut. Vielleicht gibt es dann ein Wenn (es ist ein Ordner). Aber ähm. Das obige xcopy-Ding scheint dann das Richtige für dich zu sein. Andernfalls können Sie ein Skript ausführen, um 1. alle Ordner zu kopieren und 2. alle Ordner zu leeren. Oder so. Aber das ist ... lang. xD
Ariane

0

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



-1

Soweit ich weiß, gibt es Software von Drittanbietern, die diese Funktionalität bieten kann, wenn Sie mit der Eingabeaufforderung arbeiten möchten, dann ist der Befehl copy da draußen. Geben Sie Hilfe Kopie in cmd , die Details enthält, wie Sie Dateien über cmd kopieren.
nach dem kopieren gehe in den ordner über cmd und starte den befehl

del *. *
das löscht dateien weil ordner nicht haben. Charakter


3
Löscht Dateien, aber wer sagt, dass Ordnernamen auch keine Punkte / Punkte enthalten dürfen?
Karan
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.