Robocopy
Zur Navigation springen
Zur Suche springen
Beispiel für Backup[Bearbeiten]
robocopy c:\source d:\target /s /e /purge /mt:4 /DCOPY:DAT /nfl /ndl /np /LOG+:robocopy.log
- /purge: Löschen nicht mehr existierender Datein/Verzeichnisse
- /DCOPY:DAT D(atum) A(ttributes) T(imestamp) von Verzeichnissen kopieren
- /nfl: Dateinamen nicht ausgeben, Fehler aber schon
- /ndl: Verzeichnisse nicht ausgeben
- /np: keinen Fortschritt ausgeben
- /mt:4 4 Threads
Script[Bearbeiten]
set SRC1=c:\angela set DIR1=angela set SRC2=c:\users\angela\Documents set DIR2=documents set SRC3=c:\users\angela\Pictures set DIR3=pictures set SRC4=c:\users\angela\Music set DIR4=music set SRC5=c:\users\angela\Videos set DIR5=videos set SRC6=c:\users\angela\Desktop set DIR6=desktop set SRC7=c:\users\angela\Downloads set DIR7=downloads set MARK=e:\backup.mrk set TRG_BASE=e:\backup set LABEL_1=%TRG_BASE%\.last.backup.id.1 set THREADS=4 if "%1" == "init" goto init if not exist %MARK% goto err_backup if exist %LABEL_1% goto isone set TRG=%TRG_BASE%\sicherung_1 echo "1" > %LABEL_1% goto next :isone set TRG=%TRG_BASE%\sicherung_2 del %LABEL_1% /Y :next robocopy %SRC1% %TRG%\%DIR1% /s /e /purge /mt:%THREADS% /DCOPY:DAT /nfl /ndl robocopy %SRC2% %TRG%\%DIR2% /s /e /purge /mt:%THREADS% /DCOPY:DAT /nfl /ndl robocopy %SRC3% %TRG%\%DIR3% /s /e /purge /mt:%THREADS% /DCOPY:DAT /nfl /ndl robocopy %SRC4% %TRG%\%DIR4% /s /e /purge /mt:%THREADS% /DCOPY:DAT /nfl /ndl robocopy %SRC5% %TRG%\%DIR5% /s /e /purge /mt:%THREADS% /DCOPY:DAT /nfl /ndl robocopy %SRC6% %TRG%\%DIR6% /s /e /purge /mt:%THREADS% /DCOPY:DAT /nfl /ndl robocopy %SRC7% %TRG%\%DIR7% /s /e /purge /mt:%THREADS% /DCOPY:DAT /nfl /ndl goto ready :init echo "hi" > %MARK% mkdir %TRG_BASE%\sicherung_1\%DIR1% mkdir %TRG_BASE%\sicherung_1\%DIR2% mkdir %TRG_BASE%\sicherung_1\%DIR3% mkdir %TRG_BASE%\sicherung_1\%DIR4% mkdir %TRG_BASE%\sicherung_1\%DIR5% mkdir %TRG_BASE%\sicherung_1\%DIR6% mkdir %TRG_BASE%\sicherung_1\%DIR7% mkdir %TRG_BASE%\sicherung_2\%DIR1% mkdir %TRG_BASE%\sicherung_2\%DIR2% mkdir %TRG_BASE%\sicherung_2\%DIR3% mkdir %TRG_BASE%\sicherung_2\%DIR4% mkdir %TRG_BASE%\sicherung_2\%DIR5% mkdir %TRG_BASE%\sicherung_2\%DIR6% mkdir %TRG_BASE%\sicherung_2\%DIR7% echo "Laufwerk %TR_BASE% wurde initialisert" goto end :err_backup echo "+++ Kein Sicherungslaufwerk: Bitte mit 'Backup init' markieren" goto end :ready echo "Laufwerk auswerfen und Platte entfernen" :end pause