Datensicherung per Batch-Datei mit Überschreibung nach 5 Sicherungen
Hallo liebes Forum,
ich habe folgendes Problem:
Ich möchte eine Batch Datei erstellen, die mir Daten und Ordner in einen Bestimmten Sicherungsordner kopiert. Soweit weiß ich auch wie das funktioniert. Die eig. Schwierigkeit besteht darin das ich das so machen möchte das er mir wenn ich auf Sicherung klicke einen neuen Ordner mit der neuen Sicherung erstellt, ich aber nachher net zigtausend Ordner habe, sondern wenn in meinem Sicherungsordner 5 Sicherungen vorhanden sind er die erste nimmt und diese mit der neuen Sicherung überschreibt. Ist sowas möglich und wenn ja wie. Brauche dazu nichtmal ein Komplettes Batch-Script möchte nurmal evtl. wissen ob das überhaupt geht und wenn ja wo ich ansetzen kann.
Gruß Splittey
ich habe folgendes Problem:
Ich möchte eine Batch Datei erstellen, die mir Daten und Ordner in einen Bestimmten Sicherungsordner kopiert. Soweit weiß ich auch wie das funktioniert. Die eig. Schwierigkeit besteht darin das ich das so machen möchte das er mir wenn ich auf Sicherung klicke einen neuen Ordner mit der neuen Sicherung erstellt, ich aber nachher net zigtausend Ordner habe, sondern wenn in meinem Sicherungsordner 5 Sicherungen vorhanden sind er die erste nimmt und diese mit der neuen Sicherung überschreibt. Ist sowas möglich und wenn ja wie. Brauche dazu nichtmal ein Komplettes Batch-Script möchte nurmal evtl. wissen ob das überhaupt geht und wenn ja wo ich ansetzen kann.
Gruß Splittey
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 123043
Url: https://administrator.de/contentid/123043
Ausgedruckt am: 26.11.2024 um 05:11 Uhr
10 Kommentare
Neuester Kommentar
Hallo Splittedangel!
Die Zeile oben war nur für das Löschen des fünftältesten (bzw genauer: für das Löschen aller Ordner, mit Ausnahme der 4 jüngsten) gedacht - dies unter der Annahme, dass die Ordner variable Namen (zB inkl. Datum) tragen.
Falls Du immer gleichbleibende Namen verwenden solltest, könntest Du so vorgehen, um wiederum die 4 jüngsten Ordner unangetastet zu lassen, den 5. Ordner mit dem ursprünglichen Namen neu zu erstellen und ev vorhandene noch ältere Ordner zu entsorgen:
Achtung beim Testen: Dieses Mal ist das Löschen "scharf geschaltet" (kein "echo").
Falls der beschriebene Ansatz nicht Deinem Vorhaben entspricht, solltest Du vielleicht auch etwas von Deinem Code posten ...
Grüße
bastla
Die Zeile oben war nur für das Löschen des fünftältesten (bzw genauer: für das Löschen aller Ordner, mit Ausnahme der 4 jüngsten) gedacht - dies unter der Annahme, dass die Ordner variable Namen (zB inkl. Datum) tragen.
Falls Du immer gleichbleibende Namen verwenden solltest, könntest Du so vorgehen, um wiederum die 4 jüngsten Ordner unangetastet zu lassen, den 5. Ordner mit dem ursprünglichen Namen neu zu erstellen und ev vorhandene noch ältere Ordner zu entsorgen:
@echo off & setlocal
set "Ordner=D:\Sicherungsordner"
set "Letzter="
for /f "skip=4 delims=" %%i in ('dir /b /ad /o-d "%Ordner%"') do (
rd /s /q "%Ordner%\%%i"
if not defined Letzter (
md "%Ordner%\%%i"
set "Letzter=%%i"
)
)
echo Der Ordner %Letzter% ist jetzt wieder leer
Falls der beschriebene Ansatz nicht Deinem Vorhaben entspricht, solltest Du vielleicht auch etwas von Deinem Code posten ...
Grüße
bastla
Moin 's Little Dengel,
was ich jetzt nicht verstehe ist, wenn das hier Dein heutiger Stand íst nach den ganzen Lösungsvorschlägen:
... inwiefern unterscheidet sich denn das jetzt von dem, was Du vor einer Woche vor den ersten Kommentaren gehabt hast ???
Oder tut es Dir einfach nur gut, mal mit jemand darüber reden zu können?
Wann ist denn endlich wieder Wochenende? Urlaub? Der nächste Lotto-Jackpot? Die nächste Dope-Ernte?
Back to thread:
Wie genau ist denn jetzt Dein Plan und/oder Deine Erwartungshaltung an das Forum?
Grüße
Biber
was ich jetzt nicht verstehe ist, wenn das hier Dein heutiger Stand íst nach den ganzen Lösungsvorschlägen:
Zitat von @Splittedangel:
So habe bis jetzt folgenden Code der mir einen neuen Ordner mit dem
heutigen Datum erstellt und alles dort reinkopiert, aber eben immer
nen neuen macht.
@echo off
echo Datensicherung
md c:\Sicherung\%date%
Xcopy c:\Ziel c:\Sicherung\%date% /Y/V/E/S/H
pause
So habe bis jetzt folgenden Code der mir einen neuen Ordner mit dem
heutigen Datum erstellt und alles dort reinkopiert, aber eben immer
nen neuen macht.
@echo off
echo Datensicherung
md c:\Sicherung\%date%
Xcopy c:\Ziel c:\Sicherung\%date% /Y/V/E/S/H
pause
... inwiefern unterscheidet sich denn das jetzt von dem, was Du vor einer Woche vor den ersten Kommentaren gehabt hast ???
Ich möchte eine Batch Datei erstellen, die mir Daten und Ordner in einen Bestimmten Sicherungsordner kopiert.
Soweit weiß ich auch wie das funktioniert.
Soweit weiß ich auch wie das funktioniert.
Oder tut es Dir einfach nur gut, mal mit jemand darüber reden zu können?
Wann ist denn endlich wieder Wochenende? Urlaub? Der nächste Lotto-Jackpot? Die nächste Dope-Ernte?
Back to thread:
Wie genau ist denn jetzt Dein Plan und/oder Deine Erwartungshaltung an das Forum?
Grüße
Biber
Hallo bastla , Hallo Biber
auch wenn s little dangel abgetaucht ist-
mir hat der Code schon geholfen.
Ich kann also jetzt die jüngsten XXX Ordner behalten- Rest wird gelöscht
Wenn ich aber nun keine Ordner habe, sondern sich das Löschen /Behalten nur auf DAteien im einem Verzeichnis beziehen soll?
Da habe ich nichts gefunden, da der dir Befehl das so nicht hergibt oder?
Mein/Dein Code:
ciao
vielen Dank für die Hilfe
GrEEnbYte
auch wenn s little dangel abgetaucht ist-
mir hat der Code schon geholfen.
Ich kann also jetzt die jüngsten XXX Ordner behalten- Rest wird gelöscht
Wenn ich aber nun keine Ordner habe, sondern sich das Löschen /Behalten nur auf DAteien im einem Verzeichnis beziehen soll?
Da habe ich nichts gefunden, da der dir Befehl das so nicht hergibt oder?
Mein/Dein Code:
SET Verzeichnis=\\Joerg\backup-mobil\ifls-server-system\
rem Anzahl der Ordner die nicht gelöscht werden sollen
set Keepfiles=4
rem behält die %keepfiles% letzten Dateien
for /f "skip=%Keepfiles% delims=" %%i in ('dir /b /ad /o-d "%Verzeichnis%"') do rd /s /q "%Verzeichnis%\%%i"
ciao
vielen Dank für die Hilfe
GrEEnbYte