deejaybee
Goto Top

Batch - Ordnerstruktur ändern und Daten verschieben

Hallo zusammen,

ich habe da 2 Anliegen, die mit Batch zu tun haben.

Zum Einen möchte ich in eine vorgegebene Ordnerstruktur Dateien / Ordner neu hinzufügen / erstellen.
c:\ziel\ ordner 1 \ sort \ "neu"
c:\ziel\ ordner 2 \ sort \ "neu"
c:\ziel\ ordner 3 \ sort \ "neu"
c:\ziel\ ordner 4 \ sort \ "neu"

Die Ordner heißen unglücklicherweise natürlich nicht wie im Beispiel, sondern die "ordner 1-4" haben mehr oder weniger "zufallsnamen".
Es würde mir also eine Schleife reichen, die durch die Ordner geht und mit der ich dann z.b. ein einfaches "mkdir" habe, um einen neuen Ordner zu erstellen. Ordner "neu" heißt immer "neu".


Zum Anderen:

Aus den Quellordnern sollen die Daten in die Zielordner kopiert/verschoben werden

quelle:
c:\quelle\ ordner 1 \ datei1.pdf
c:\quelle\ ordner 2 \ datei17.pdf
c:\quelle\ ordner 3 \ datei0815.pdf


ziel:
c:\ziel\ ordner 1 \ sort \ sonst \ datei1.pdf
c:\ziel\ ordner 2 \ sort \ sonst \ datei17.pdf
c:\ziel\ ordner 3 \ sort \ sonst \ datei0815.pdf

Was passiert, wenn der zielordner nicht existiert?
Kann man dann die Quelldatei in einen "Zwischenordner" verschieben? Oder entsprechend einen neuen Zielordner anlegen?

Hoffe, Ihr könnt mir dabei helfen.

Schöne Grüße

Content-Key: 279176

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

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

Mitglied: 122990
122990 Aug 04, 2015 updated at 14:39:48 (UTC)
Goto Top
Moin,
da reicht doch ein Robocopy Befehl wenn ich das richtig verstanden habe ...
robocopy "C:\quelle" "C:\ziel" * /E /COPYALL /W:1 /R:1  
Gruß grexit
Member: DeeJayBee
DeeJayBee Aug 05, 2015 at 07:20:16 (UTC)
Goto Top
Moin grexit,

leider nein.

in Beispiel 2 kommen die Daten zwar in den "selben" Ordner "x", jedoch noch etwas weiter unterverzweigt.
also von
c:\quelle\ ordner 1 \ datei1.pdf
nach
c:\ziel\ ordner 1 \ sort \ sonst \ datei1.pdf

Der Ordnername ist variabel, der Rest immer gleich. (Und es sind immer *.pdf Dateien)

Schöne Grüße
Mitglied: 122990
122990 Aug 05, 2015 updated at 09:17:09 (UTC)
Goto Top
Na dann,
@echo off
set "quelle=C:\quelle"  
set "ziel=C:\Ziel"  
for /d %%a in ("%quelle%\*") DO robocopy "%%a" "%ziel%\%%~nxa\sort\sonst" *.pdf /COPYALL /R:1 /W:1  
Pfade natürlich den Bedürfnissen anpassen (auch in Zeile 4 den ergänzenden Ordnerbaum.

Gruß grexit