Hier zeige ich Euch wie Ihr Eure Daten per Batch Datensicherung auf eine externe Festplatte spiegeln könnt. Damit spart Ihr Euch das Geld für teure Software.
Batch Datensicherung Schalter für das Anpassen der Befehle
Eine Batchdatei erstellt man über ein Textdokument, das man dann mit einer bestimmten Dateiendung abspeichert (oder umbenennt):
- Öffnet ein neues Textdokument und speichert es an einem beliebigen Ort ab
- Benennt die Datei um. Und zwar muss die Dateiendung von *.txt in *.bat umgeschrieben werden. Nun haben wir eine Batch-Datei (DE Wiki zu Batch Infos)
Nachdem die Batch-Datei nun vorhanden ist müssen wir die Batch Datensicherung “programmieren”:
- Für mein Beispiel wähle ich einen Ordner der auf C:\ liegt und test heißt und auf D:\ kopiert werden soll und weiterhin test heißen soll. Kopiert dazu den folgenden Codeschnipsel in die eben erstellte BAT-Datei:
@echo off
xcopy c:\test d:\test /D /E /Y /I /C
pause
Dabei bedeuten die Buchstaben (Schalter) folgendes:
/D = Kopiere nur neuere Dateien
/E = Unterverzeichnisse mitkopieren
/Y = Dateien und Ordner ohne Nachfrage überschreiben
/I = Ordner anlegen, wenn diese nicht vorhanden sind
/H = Kopiert auch versteckte Dateien und Systemdateien
/C = Defekte Dateien überspringen bzw. ignorieren (Kopiervorgang wird fortgesetzt)
Wer übrigens das schwarze Comand-Feld, dass die Batch Datensicherug automatisch öffnet, nicht von Hand wegklicken möchte, der lässt am Ende das Wort “pause” einfach weg. Das Fenster schließt sich dann von selbst nachdem die Batch Datensicherung durchgelaufen ist. Oder Ihr editiert in den Einstellungen der Verknüpfung der Batch, dass das Fenster minimiert laufen soll.
Beachtet bitte, dass bei Ordnern, die ein Leerzeichen im Namen haben, Anführungszeichen gesetzt werden müssen. Also würde der Ordner C:\te st nur dann gesichert werden, wenn der Befehl xcopy “C:\te st”… beinhalten würde.
Ordnername mit Datum (und Uhrzeit) automatisch per Batch erstellen lassen
Wer wie ich mit Hilfe der Batch einen Ordner erstellen lassen will, der als Name das aktuelle Datum enthält, kann den Befehl wie folgt erweitern:
Der Command für folgendes Format JJJJ_MM_TT lautet:
set Datum=%date:~6,4%_%date:~3,2%_%date:~0,2%
Entsprechend sieht der gesammte Batch-Befehl so aus:
@echo off
xcopy c:\test d:\test\set Datum=%date:~6,4%_%date:~3,2%_%date:~0,2% /D /E /Y /I /C
pause
Mit _%time:~-11,2%-%time:~-8,2%-%time:~-5,2% kann an das Datum noch die Uhrzeit angehängt werden:
@echo off
xcopy c:\test d:\test\set Datum=%date:~6,4%_%date:~3,2%_%date:~0,2%_%time:~-11,2%-%time:~-8,2%-%time:~-5,2% /D /E /Y /I /C
pause
Auslassen von unnötigen Dateien oder Ordner während der Batch Datensicherung
Ein dazugehöriger Tipp, der ganz nützlich scheint ist, dass man Dateien exkludieren kann, also auslassen kann. Diese werden dann nicht mit kopiert. Das geschieht über eine Textdatei in die man die auszulassenden Elemente und Ordner einträgt.
Dazu fügen wir einen weiteren Schalter ans Ende der Reihe (hier in rot dargestellt):
@echo off
xcopy c:\test d:\test /D /E /Y /I /exclude:auslassen.txt
pause
Die auslassen.txt-Datei muss im gleichen Verzeichnis liegen, wie die Batch-Datei und kann dann mit den informationen ausgestattet werden, was nicht mitkopiert werden soll.
Anbei ein Beispiel, wie wir den Ordner “Temporary Internet Files” und alle Dateien mit den Endungen .tmp und .log auslassen:
Temporary Internet Files
.tmp
.log
Pro auszulassenden Ordner oder Datei bitte eine Zeile verwenden. Den Platzhalter * können wir nicht verwenden.
Tipps für die Batch Datensicherung und günstige externe Festplatte
Diese Batch Datensicherung läuft natürlich nicht automatisch. Entweder Du startest sie von Hand (Doppelklick auf die Batch Datensicherungs-Datei) oder über einen geplanten Task in der Systemsteuerung.
Falls du Festplattenplatz für die Datensicherung brauchst empfehle ich Dir meinen Artikel: HowTo Windows Datensicherung einrichten!
Ferdsch :)
Vielen Dank! Seit Jahren suche ich nach einer Lösung, die mir nach erstmaliger Vollsicherung immer nur die neusten Daten auf eine HDD bzw. zwei HHDs kopiert (via E-Sata 1 mal pro Monat oder nach wichtigen Ereignissen auch öfter). Bislang habe ich nacheinander die Backup-Drives formatiert und wieder alle Daten erneut kopiert (aktuell 2 TB). Das schadet wahrscheinlich der Platte enorm, oder?
Ein Backup via anderer Software – egal ob inkrementell oder differenziell – erschien mir immer zu undurchsichtig. Ich will ja eigentlich nur die alle Ordner + deren Unterordner und Dateien von HHD “A” auf HDD “Y” und HDD “Z” kopieren (dabei nur die veränderten oder neuen Dateien). Das am liebsten noch mit einer Überprüfung der Datenintegrität. Geht das via Batch auch?
Das Backup via Batch werde ich heute Abend gleich mal testen.
Danke und Grüße,
Raphael
Moin, hier habe ich noch eine erweiterte Anleitung zum Erstellen verschiedener Ordner mittels Datum und Uhrzeit. Vielleicht hilft Dir das ja…
Batch Ordner erstellen Datum und Uhrzeit
Grüße, Vince
Funktioniert super. Vielen Dank! Löst ein Problem mit der neuen DSGVO.
Hi auch ich kämpfe gerade mit den Parametern.
xcopy X:\Notfall_Dateien \\SVXX\Default\Share\Name\Notfall_Dateien\set Datum=%date:~6,4%_%date:~3,2%_%date:~0,2% /D /E /Y /I /C
und bekomme die Meldung “unzulässige Parameteranzahl
Lasse ich den Set Datum-Befehl weg, wird xcopy ausgeführt. Wo ist meine Fehler?
Servus Martin. Ich denke du solltest Deinen Befehl in Anführungszeichen setzen (Leerzeichen werden somit in den Befehl übernommen):
xcopy X:\Notfall_Dateien “\\SVXX\Default\Share\Name\Notfall_Dateien\set Datum=%date:~6,4%_%date:~3,2%_%date:~0,2%” /D /E /Y /I /C
Grüße,
Vincent
P.s. Es kann sein, dass die Anführungszeichen hier im Blog in Deinem Terminal / CMD nicht funktionieren. Ersetze dann die Anführungszeichen einfach mit Deinen.
Hallo Vicent,
Danke Dir für die schnelle Hilfe. Funktioniert reibungslos. Hat mir sehr geholfen. :-)