Batch - Backup von vorgegebener Verzeichnis- und Dateistruktur erstellen
Hallo,
folgendes Szenario:
Es besteht eine Programm-Verzeichnis~/Dateistruktur.
_______
Skizze:
Hauptordner
|
|-Ordner1
|--Datei1
|--UnterOrdner1
|---Datei2
|---Datei3
|---UnterUnterOrdner3
|----Datei4
|-Ordner4
|-Ordner5
|--Datei5
...
usw.
Desweiteren gibt es eine Updatepaket mit folgendem, beispielhaftem Inhalt:
_______
Skizze:
Hauptordner
|
|-Ordner1
|-Datei1
|-Datei2
|--UnterOrdner1
|---Datei3
|---Datei4
|-Ordner4
|--UnterOrdner5
|---Datei5
...
usw.
__________________
Was benötigt wird:
Ein Skript, dass das entpackte Updatepaket, sprich die spezifische Verzeichnis~/Dateistruktur ausliest und aus dem Programmordner die übereinstimmenden/gleichen Verzeichnisse und Ordner (inklusive Rekursivität) in ein drittes Verzeichnis "Backup"
kopiert.
Anschließend erfolgt das Update per "xcopy" aus dem entpacktem Updatepaket in den Programmordner.
Danke im Voraus!
folgendes Szenario:
Es besteht eine Programm-Verzeichnis~/Dateistruktur.
_______
Skizze:
Hauptordner
|
|-Ordner1
|--Datei1
|--UnterOrdner1
|---Datei2
|---Datei3
|---UnterUnterOrdner3
|----Datei4
|-Ordner4
|-Ordner5
|--Datei5
...
usw.
Desweiteren gibt es eine Updatepaket mit folgendem, beispielhaftem Inhalt:
_______
Skizze:
Hauptordner
|
|-Ordner1
|-Datei1
|-Datei2
|--UnterOrdner1
|---Datei3
|---Datei4
|-Ordner4
|--UnterOrdner5
|---Datei5
...
usw.
__________________
Was benötigt wird:
Ein Skript, dass das entpackte Updatepaket, sprich die spezifische Verzeichnis~/Dateistruktur ausliest und aus dem Programmordner die übereinstimmenden/gleichen Verzeichnisse und Ordner (inklusive Rekursivität) in ein drittes Verzeichnis "Backup"
kopiert.
Anschließend erfolgt das Update per "xcopy" aus dem entpacktem Updatepaket in den Programmordner.
Danke im Voraus!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 98927
Url: https://administrator.de/contentid/98927
Ausgedruckt am: 22.11.2024 um 03:11 Uhr
3 Kommentare
Neuester Kommentar
Hallo Wolfsrudel!
Sollte etwa so gehen:
Grüße
bastla
Sollte etwa so gehen:
@echo off & setlocal enabledelayedexpansion
set "Prog=D:\Hauptordner Programm"
set "Update=D:\Update"
set "Backup=D:\Backup"
:: Ordnerstruktur erstellen
xcopy /t "%Update%" "%Backup%\"
:: Programmdateien, falls im Update vorhanden, nach Backup kopieren
for /f "delims=" %%i in ('dir /s /b /a-d "%Update%"') do (
:: Relativen Pfad (unterhalb des Ordners %Update%) ermitteln
set "RelPath=%%i"
set "RelPath=!RelPath:%Update%=!
:: Falls zu ueberschreibende Datei in %Prog%-Ordnerstruktur vorhanden ist, diese nach %Backup% kopieren
if exist "%Prog%!RelPath!" copy "%Prog%!RelPath!" "%Backup%!RelPath!">nul
)
::Update kopieren
xcopy /e /y "%Update%" "%Prog%\">nul
bastla