Unterordner mit batch kopieren inkl. Ordner höherer Ebenen, diese allerdings ohne den Inhalt
Hallo,
habe ein "Batch" Problem, mit welchem ich nicht weiter komme....
Was ich gerne möchte:
Folgende Ordnerstrukturen habe ich:
Diese 6 Ordner (jeweils datenblatt) möchte ich nach E:/archive kopieren mit dem gesamten Inhalt von den 6 Ordnern.
Jetzt kommt der Punkt, an welchem ich hänge:
Ich möchte alle Überordner von den 6 Ordnern "datenblatt" mit kopieren, allerdings ohne Inhalt, so dass man in E:/archive sieht, von wo der Ordner herkam.
Z.B.
Gibt es da eine Möglichkeit?
Danke
habe ein "Batch" Problem, mit welchem ich nicht weiter komme....
Was ich gerne möchte:
Folgende Ordnerstrukturen habe ich:
D:/dateien/<<verschiedene ordnernamen>>/datenblatt
D:/dateien/<<verschiedene ordnernamen>>/datenblatt
D:/dateien/<<verschiedene ordnernamen>>/datenblatt
D:/dateien/<<verschiedene ordnernamen>>/datenblatt
D:/dateien/<<verschiedene ordnernamen>>/datenblatt
D:/dateien/<<verschiedene ordnernamen>>/datenblatt
.
.
.
Jetzt kommt der Punkt, an welchem ich hänge:
Ich möchte alle Überordner von den 6 Ordnern "datenblatt" mit kopieren, allerdings ohne Inhalt, so dass man in E:/archive sieht, von wo der Ordner herkam.
Z.B.
E:/archive/<<verschiedene ordnernamen>>/datenblatt
E:/archive/<<verschiedene ordnernamen>>/datenblatt
E:/archive/<<verschiedene ordnernamen>>/datenblatt
E:/archive/<<verschiedene ordnernamen>>/datenblatt
E:/archive/<<verschiedene ordnernamen>>/datenblatt
E:/archive/<<verschiedene ordnernamen>>/datenblatt
Danke
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 193649
Url: https://administrator.de/contentid/193649
Ausgedruckt am: 25.11.2024 um 05:11 Uhr
3 Kommentare
Neuester Kommentar
Hallo touro411!
Sollte in etwa so gehen:
Einschränkung: Es werden nur "datenblatt"-Ordner kopiert, die Dateien enthalten ...
Grüße
bastla
Sollte in etwa so gehen:
@echo off & setlocal
set "Quelle=D:\dateien"
set "Ordner=datenblatt"
set "Ziel=E:\archive"
for /f "delims=" %%i in ('dir /s/b/ad "%Quelle%\%Ordner%"') do set "Pfad=%%~fi" & call :ProcessDir "%%i"
goto :eof
:ProcessDir
call set "RelPfad=%%Pfad:%Quelle%\=%%"
xcopy %1 "%Ziel%\%RelPfad%">nul
goto :eof
Grüße
bastla
Hallo touro411!
Soferne es nicht noch mehr Ordner namens "Datenblatt" unterhalb von "D:\Dateien" gibt, sehe ich das Problem nicht ...
Welches Ergebnis hat denn Dein Test mit meinem Ansatz von oben erbracht? Wenn Du zum Testen übrigens die Zeile 11 durch
ersetzt, wird nicht tatsächlich kopiert, sondern es werden nur die Kopierbefehle angezeigt. Falls Du nicht aus einer CMD-Shell testest (was Du solltest), kannst Du noch zwischen Zeile 6 und 7 eine Zeile mit
einfügen - dann kannst Du die Ausgabe in Ruhe ansehen ...
Grüße
bastla
Soferne es nicht noch mehr Ordner namens "Datenblatt" unterhalb von "D:\Dateien" gibt, sehe ich das Problem nicht ...
Welches Ergebnis hat denn Dein Test mit meinem Ansatz von oben erbracht? Wenn Du zum Testen übrigens die Zeile 11 durch
echo xcopy %1 "%Ziel%\%RelPfad%"
pause
Grüße
bastla