evinben
Goto Top

Der Befehl COPY bzw. XCOPY kopiert leider nicht die Ordnerstruktur mit. Wie Ordner samt Unterordner kopieren?

Hallo,

wie kopiert ihr eigentlich eure Ordner von einem Verzeichnis in das andere, ohne dass dabei alle Dateiinhalte wirr in einem einzigen Ordner landen, sondern ihre Ordnerstruktur genauso, wie diese im Quellverzeichnis sind, beibehalten?

Nachfolgend sieht ihr meine Versuche Verzeichnisse auf diese Batch-Datei zu ziehen. Allerdings werden die Dateien dadurch nackt und verlieren ihre ganze Ordnerstruktur:
@echo off
set "Server=\\Server"  

for %%b in (%*) do (
	:if exist "%NetzwerkPfad%" (copy %%b "%NetzwerkPfad%" & goto :eof)  
	:robocopy /e %%b "%Server%"  
	:copy %%b "%Server%"  
	:xcopy %%b "%Server%"  
	robocopy /COPY:DAT %%b "%Server%"  
	)

pause >nul

Wie ihr sieht, habe ich eine Weile mit Robocopy versucht, nur ebenso das gleiche Ergebnis...

Danke für eure Tipps!

Gruß
evinben

Content-Key: 188081

Url: https://administrator.de/contentid/188081

Printed on: April 23, 2024 at 15:04 o'clock

Member: bastla
bastla Jul 16, 2012 at 11:04:31 (UTC)
Goto Top
Hallo evinben!

Da Du ja keinen Zielpfad angibst, kann dieser auch nicht erstellt werden - mit "xcopy" sollte zB etwas in der Art möglich sein:
xcopy /dy "%%b" "%Server%\Share%%~pb"
Grüße
bastla
Member: kontext
kontext Jul 16, 2012 updated at 11:06:03 (UTC)
Goto Top
HeyHo,

scho mal xcopy /? eingegeben ...
... listet dir ein "paar" Parameter auf ...

Hier ein Auszug:
/S Kopiert Verzeichnisse und Unterverzeichnisse, die nicht leer sind.
/E Kopiert alle Unterverzeichnisse (leer oder nicht leer).

Sollte doch das sein was du suchst, oder?!

EDIT: und wie bastla schon schrieb - ohne Zielangabe wirds nicht klappen

Cheers
Member: MrNetman
MrNetman Jul 16, 2012 at 11:14:35 (UTC)
Goto Top
Zanko schreib richtig und äußerst zutreffend
xcopy /?
Man kann auch ohne explizite Quell- und Zielangabe kopieren, wenn man sich sicher ist, im richtigen Verzeichnis zu sein und das Ziel auch via cmd-Fenster ins richtige Verzeichnis gesetzt worden ist.
Das lautet das dann so einfach:
xcopy . y: /E
Wenn du nur die Verzeichnisstruktur benötigst:
xcopy *.* y: /T /E

Gruß
Netman
Member: evinben
evinben Jul 16, 2012 updated at 11:39:13 (UTC)
Goto Top
Hallo zanko,

/E Kopiert alle Unterverzeichnisse (leer oder nicht leer).
Noch mal versucht und es ging dies mal!
Die Parameter sind mir bekannt und mit denen habe ich öfters gearbeitet. Sicherlich hatte ich dabei einen Fehler im Batch selbst, den ich diesmal übersehen gehabt habe.


Hallo Bastla,
Da Du ja keinen Zielpfad angibst, kann dieser auch nicht erstellt werden
Sorry, hier im Beispiel habe ich es abgekürzt, wobei in dem Batch ist das Zielverzeichnis in der Variable gesetzt.
xcopy /dy "%%b" "%Server%\Share%%~pb"
Du hast den Parameter /S bzw. /E vergessen face-wink - so werden die Unterverzeichnisse nicht mitkopiert.

Hallo Netman,
xcopy *.* y: /T /E
Danke für den Tipp! Es war sehr nützlich.

Vielen Danke euch nochmals ganz herzlich!

Projekt abgeschlossen

Gruß
evinben
Member: kontext
kontext Jul 16, 2012 at 11:44:34 (UTC)
Goto Top
Hallo evinben,

dann noch: How can I mark a post as solved? nicht vergessen face-smile

Gruß
Member: evinben
evinben Jul 16, 2012 at 11:57:46 (UTC)
Goto Top
Hallo zanko,

keine Sorge. Dies wäre mir sicherlich bald aufgefallen, da ich mich hier wohl fülle und mich über meine Inhalte kümmere, so nach dem Wunsch: alles muss als "erledigt" markiert sein...

Gruß
evinben
Member: bastla
bastla Jul 16, 2012 updated at 12:49:02 (UTC)
Goto Top
Hallo evinben!
Du hast den Parameter /S bzw. /E vergessen face-wink - so werden die Unterverzeichnisse nicht mitkopiert.
Das nicht - aber auf Dateien ausgerichtet (Du verwendest ja eine Schleife), damit jeweils der Zielpfad erstellt wird - für das Kopieren gesamter Ordner würde ich natürlich auch "/E" verwenden (und "/S" weglassen, da bereits in "/E" inkludiert) ...

Grüße
bastla
Member: evinben
evinben Jul 16, 2012 at 14:17:55 (UTC)
Goto Top
Hallo bastla,

ne, ne. In der Schleife werden alle Argumente der Reihe nach abgearbeitet - also die Pfade aller Ordner bzw. Dateien, die auf die Batch-Datei fallen gelassen werden.
Der Zielpfad (das Hauptverzeichnis) bleibt also unverändert.

Gruß
evinben
Member: bastla
bastla Jul 16, 2012 updated at 14:26:04 (UTC)
Goto Top
Hallo evinben!

Ich habe auch nix anderes behauptet - nur etwas zu oberflächlich gelesen face-sad und mich deshalb auf Dateien konzentriert ...

Grüße
bastla
Member: evinben
evinben Jul 16, 2012 at 15:31:26 (UTC)
Goto Top
Hallo bastla,

kein Thema. Alle wir sind Menschen... und das ist das schöne daran.

Gruß
evinben