Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off
- :: Backup-Script für Microsoft Windows
- :: Erzeugt ein Backup von einem Ordner in einem anderen
- :: und versieht existierende Dateien mit einer zusätzlichen Datum-Uhrzeit-Endung (Versionskontrolle)
- ::
- :: Benötigt: cp.exe, libiconv2.dll und libintl3.dll (im Coreutils Paket) aus dem GnuWin32 Projekt
- :: Download: http://gnuwin32.sourceforge.net/packages/coreutils.htm
- :: Diese Dateien müssen sich im selben Ordner wie dieses Batch-Skript befinden!
- ::
- :: Der Grund für diese Abhängigkeit ist der: Rekursives Kopieren von Dateien und Ordnern
- :: ist mit dem Windows-eigenen copy bzw. xcopy zwar möglich, aber das Erkennen und Umbenennen existierender Dateien
- :: ist extrem kompliziert, wenn nicht sogar unmöglich.
- :: Der cp-Befehl aus dem GNU-Projekt hat dafür aber den --backup Parameter, der genau das gewünschte Ergebnis bringt.
- ::
- :: Author: Michael Koch
- :: Version: 2013-09-20
- :: Backup-Quelle und Ziel
- set Backup_Src=C:\Quelle
- set Backup_Dest=E:\Backups\Ziel
- :: Variable für Datum und Uhrzeit
- :: Braucht nicht verändert zu werden
- :: Sollte so auf jedem deutschen Windows-System funktionieren
- :: (auf anderssprachigen Systemen stimmt das Datumsformat nicht überein)
- set DatumZeit09=%date:~-4%-%date:~6,2%-%date:~3,2%_0%time:~1,1%-%time:~3,2%-%time:~6,2%
- set DatumZeit24=%date:~-4%-%date:~6,2%-%date:~3,2%_%time:~0,2%-%time:~3,2%-%time:~6,2%
- set Stunde=%time:~0,2%
- if "%Stunde:~0,1%" == " " (
- set DatumZeit=%DatumZeit09%
- ) else (
- set DatumZeit=%DatumZeit24%
- )
- :: Hier findet das eigentliche Backup statt
- cp.exe -v --update --backup --suffix=.%DatumZeit% -r "%Backup_Src%\*" "%Backup_Dest%"
Advertisement
Add Comment
Please, Sign In to add comment