Inhaltsverzeichnis

Backup Script for Windows

tutname=Backup Script für Windows|tutautor=[[psycore]]|tutversion=2.10|tutquelle=n/a

Required software

Current version

REM Dieses Script benötigt folgende, externe Programme:
REM rm.exe - unixutils - http://unxutils.sourceforge.net/
REM rar.exe - WinRAR - http://www.winrar.de
REM robocopy.exe - Robocopy - http://www.hellhost.de/wiki/software:backup-script-win
 
@ECHO OFF
COLOR 0A

REM Verzeichnis, in das die Daten kopiert werden
set bd=D:\backup\backup-tmp

REM Verzeichnis in der das Backup Script liegt
set wd=Y:\VerzeichnisMitBackupScript\

REM LogDatei
set lf=backup.log
 
echo  _   _    _    ____         ___   ___  _
echo ^| \ ^| ^|  / ^\  / ___^|       / _ ^\ / _ ^\/ ^|
echo ^|  \^| ^| / _ ^\ ^\___ ^\ _____^| ^| ^| ^| ^| ^| ^| ^|
echo ^| ^|^\  ^|/ ___ ^\ ___) ^|_____^| ^|_^| ^| ^|_^| ^| ^|
echo ^|_^| ^\_/_/   ^\_^\____/       ^\___/ ^\___/^|_^|
echo Backup Script Version 2.10 by PsyCore
echo ------------------------------------------------------------
echo Prüfe Backup Dateien...
if exist %wd%rar.exe echo rar.exe: OK!
if not exist %wd%rar.exe exit > %lf%
if exist %wd%rm.exe echo rm.exe: OK!
if not exist %wd%rar.exe exit > %lf%
echo kopiere Dateien...
 
echo Backup gestartet um %time% am %date% > %lf%

REM Kopieren wir ein paar Dateien mit der Endung txt
robocopy "C:\textfiles" %bd% *.txt /MIR /LOG+:backup.log

REM Und nun ein ganzes Verzeichnis
robocopy "C:\ordner" %bd% * /MIR /LOG+:backup.log
 
 
echo ------------------------------------------------------------
 
echo setze Laufwerk...
 
set BACKDIR="\\Server\Verzeichnis" >> %lf%
echo Backup Verzeichnis: %BACKDIR% >> %lf%
set rar=%wd%backup.generic.rar >> %lf%
 
echo ------------------------------------------------------------
 
echo packing files...
 
%wd%rar a -m0 -hpPASSWORT -u -t -rr2 -r -ep1 "%rar%" "%wd%backup-tmp\*.*" >> %lf%
 
echo ------------------------------------------------------------

REM %wd%md5sum -b %rar% >> %lf%
 
echo copy files to %BACKDIR% ... STAY TUNED!
 
robocopy %wd% %BACKDIR% backup.generic.rar /LOG+:backup.log /TEE
 
echo ------------------------------------------------------------
echo Abschluss...
 
del /f backup.generic.rar
 
echo Backup beendet um %time% am %date% >> %lf%
 
echo ------------------------------
Color 07
REM type %lf%
REM PAUSE

Previous versions

Version 2.04

<spoiler>

REM Dieses Script benötigt folgende, externe Programme:
REM rm.exe - unixutils - http://unxutils.sourceforge.net/
REM rar.exe - WinRAR - http://www.winrar.de
 
@ECHO OFF
COLOR 0A
 
set bd=D:\backup\bck
set wd=D:\backup\
set lf=%wd%backup.log
 
echo  _   _    _    ____         ___   ___  _
echo ^| \ ^| ^|  / ^\  / ___^|       / _ ^\ / _ ^\/ ^|
echo ^|  \^| ^| / _ ^\ ^\___ ^\ _____^| ^| ^| ^| ^| ^| ^| ^|
echo ^| ^|^\  ^|/ ___ ^\ ___) ^|_____^| ^|_^| ^| ^|_^| ^| ^|
echo ^|_^| ^\_/_/   ^\_^\____/       ^\___/ ^\___/^|_^|
echo Backup Script Version 2.03 by PsyCore
echo ------------------------------------------------------------
echo Prüfe Backup Dateien...
if exist %wd%rar.exe echo rar.exe: OK!
if not exist %wd%rar.exe exit > %lf%
if exist %wd%rm.exe echo rm.exe: OK!
if not exist %wd%rar.exe exit > %lf%
echo kopiere Dateien...
 
echo Backup gestartet um %time% am %date% > %lf%
REM hier werden die Dateien aus unterschiedlichen Verzeichnissen kopiert
xcopy /v /y "C:\anpassen\*.xls" %bd% > %lf%
xcopy /e /v /y "C:\anpassen\irgendwas\verzeichnis" %bd%\verzeichnis\ >> %lf%
REM ...usw.
 
echo ------------------------------------------------------------
 
echo setze Laufwerk...

REM BACKDIR ist in diesem Falle eine Freigabe auf einem Server im LAN
set BACKDIR="\\SRV-IRGENDWAS\Backup" >> %lf%
echo Backup Verzeichnis: %BACKDIR% >> %lf%
set rar=%wd%backup.rar >> %lf%
 
echo ------------------------------------------------------------
 
echo packing files...

REM Parameter -p ist das Passwort für die RAR Datei, in diesem Falle PASSw0RT
%wd%rar a -m0 -hpPASSW0RT -u -t -rr2 -r -ep1 "%rar%" "%wd%backup-tmp\*.*" >> %lf%
 
echo ------------------------------------------------------------

REM %wd%md5sum -b %rar% >> %lf%
 
echo copy files to %BACKDIR% ... STAY TUNED!
 
xcopy /v /y %rar% %BACKDIR% >> %lf%
 
%wd%rm -v -f -R %bd%\* >> %lf%
rem %wd%rm -v -f %rar%
 
echo Backup beendet um %time% am %date% >> %lf%
 
echo ------------------------------
Color 07
REM type %lf%
REM PAUSE

</spoiler>

Version 2.01

<spoiler>

REM Dieses Script benötigt folgende, externe Programme:
REM rm.exe - unixutils - http://unxutils.sourceforge.net/
REM rar.exe - WinRAR - http://www.winrar.de
 
@ECHO OFF
COLOR 0A

REM Die Variablen bd (Backup Directory) und wd (working directory) müssen angepasst werden
set bd=D:\backup\bck
set wd=D:\backup\
set lf=%wd%backup.log
 
echo  _   _    _    ____         ___   ___  _
echo ^| \ ^| ^|  / ^\  / ___^|       / _ ^\ / _ ^\/ ^|
echo ^|  \^| ^| / _ ^\ ^\___ ^\ _____^| ^| ^| ^| ^| ^| ^| ^|
echo ^| ^|^\  ^|/ ___ ^\ ___) ^|_____^| ^|_^| ^| ^|_^| ^| ^|
echo ^|_^| ^\_/_/   ^\_^\____/       ^\___/ ^\___/^|_^|
echo Backup Script Version 2.01 by PsyCore
echo ------------------------------------------------------------
echo Prüfe Backup Dateien...
if exist %wd%rar.exe echo rar.exe: OK!
if not exist %wd%rar.exe exit > %lf%
if exist %wd%rm.exe echo rm.exe: OK!
if not exist %wd%rar.exe exit > %lf%
echo kopiere Dateien...

REM hier werden die Dateien aus unterschiedlichen Verzeichnissen kopiert
xcopy /v /y "C:\anpassen\*.xls" %bd% > %lf%
xcopy /e /v /y "C:\anpassen\irgendwas\verzeichnis" %bd%\verzeichnis\ >> %lf%
REM ...usw.
 
echo ------------------------------------------------------------
 
echo setze Laufwerk...

REM BACKDIR ist in diesem Falle eine Freigabe auf einem Server im LAN
set BACKDIR="\\SRV-IRGENDWAS\Backup" >> %lf%
echo Backup Verzeichnis: %BACKDIR% >> %lf%
set rar=%wd%backup.rar >> %lf%
 
echo ------------------------------------------------------------
 
echo packing files...

REM Parameter -p ist das Passwort für die RAR Datei, in diesem Falle PASSw0RT
%wd%rar a -m0 -pPASSw0RT -k -t -rr2 -r -ep1 "%rar%" "%bd%*.*" >> %lf%
 
echo ------------------------------------------------------------
 
echo copy files to %BACKDIR% ... STAY TUNED!
 
xcopy /v /y %rar% %BACKDIR% >> %lf%
REM Eine Datei anhand des Datums überprüfen und wenn neuer, dann kopieren
xcopy /v /D /y D:\sonstwas\irgendwas.doc %BACKDIR% >> %lf%

REM Löschen der Dateien
%wd%rm -v -f -R %bd%\* >> %lf%
%wd%rm -v -f %rar%
 
echo ------------------------------
Color 07
REM type %lf%
REM PAUSE

</spoiler>