Batch Am Tag X soll mit Robocopy ein Backup starten

Ellinikoskaffes

Cadet 2nd Year
Registriert
Feb. 2013
Beiträge
19
Guten Tag Lieber Leser,
ich bin leider etwas verzweifelt am experimentieren und komme leider an keinen Lösung.
Deswegen wende ich mich an euch die höchstwahrscheinlich mehr Erfahrung haben in bereich Batch.

Ich habe mich im Google umgeschaut nur die meisten Lösungen gaben mir keinen erfolg.

Folgendes möchte ich erstellen: :cool_alt::)

Ich möchte ein Batch Datei erstellen und unter GroupPolice von ein Windows 7 PRO Version beim Herunterfahren einbinden.
Womit das tägliche Herunterfahren Backup kein Problem ist.:)

Das bestimmen von einen gewissen tag wie z.B. jeden Freitag soll mit Robocopy ein Backup Starten ist nicht so Einfach als es sich anhört. -Kann auch daran liegen weil ich mich mit Batch Dateien nicht sehr lange damit gearbeitet habe.:freak: :p

Batch scripte b.z.w befehle können das wort Friday oder Fri oder sonnstiges nicht erkennen es sei den ich füge ein Datum wo das echt doof wäre alle Datum in einen script einzufügen damit das Backup jeden Freitag eine Sicherung durchführen soll.

Kennt jemmand von euch eine Lösung wie man das Problem lösen könnte?

Hier ist mein Beispiel:

Code:
@For /F "tokens=1 delims=* " %%A in ('Date /t') do Set DAY=%%A

IF %day% == Fri GOTO backup

:backup
Echo No
ROBOCOPY <Pfad> <Ziel> <Option>

Ich bin sicher das ich da ein Logischer Fehler habe :-/

Danke im Voraus für Euer Hilfe!

Grüße

Ellinikoskaffes
 
Guten Tag HominiLupus,
warum bin ich nicht selber da drauf gekommen.^^
Das sieht gut aus nur das Problem ist es man kann dort nur Zeitangaben einstellen.

Das Script soll aber am Freitag beim Herunterfahren Benutzt werden. :freak:
 
Ja, da wird leider das Problem nicht gelöst.
Der Person weigerte noch den script in GroupPolice einzufügen.

Ich habe das alles schon gemacht nur der Nachteil ist es, mann kann unter GroupPolice Edit kein bestimmten tag eingeben, welchen script der Rechner beim Herunterfahren benutzen soll.

Unter Aufgabenplanung kann man Tag und Zeit eingeben aber man kann nicht die Einstellung geben beim Herunterfahren.

Also nochmal:

Ein Robocopy Script soll an einem Bestimmten Tag wie z.B am Freitag beim Herunterfahren einen Sicherung durchführen. ^^ :rolleyes::p:freak:
 
Wen es interessiert, die Sache direkt per Batch zu lösen:
Code:
@echo off
:ANFANG
cls

for /F "tokens=2 skip=2 delims=," %%D in ('WMIC Path Win32_LocalTime Get DayOfWeek /Format:csv') do (
set TAG=%%D
)

if %TAG% == 1 GOTO MO
if %TAG% == 2 GOTO DI
if %TAG% == 3 GOTO MI 
if %TAG% == 4 GOTO DO
if %TAG% == 5 GOTO FR 
if %TAG% == 6 GOTO SA
if %TAG% == 0 GOTO SO


:MO
echo Heute ist Montag der %date%
pause
GOTO ANFANG

:DI
echo Heute ist Dienstag der %date%
pause
GOTO ANFANG

:MI
echo Heute ist Mittwoch der %date%
pause
GOTO ANFANG

:DO
echo Heute ist Donnerstag der %date%
pause
GOTO ANFANG

:FR
echo Heute ist Freitag der %date%
pause
GOTO ANFANG

:SA
echo Heute ist Samstag der %date%
pause
GOTO ANFANG

:SO
echo Heute ist Sonntag der %date%
pause
GOTO ANFANG
 
Mich stellt sich hier die Frage ob Windows dann auch wirklich wartet bis robocopy durch ist mit der Sicherung oder der Vorgang zum Herunterfahren dabei auch schon dazwischen funkt.

Wieso nicht die Sicherung fahren und dann einfach via 'shutdown -s' herunterfahren lassen zu einem bestimmten Zeitpunkt (sofern das möglich ist, z. B. Freitags 22.00 Uhr)
 
ryan_blackdrago schrieb:
Wen es interessiert, die Sache direkt per Batch zu lösen:
Code:
@echo off
:ANFANG
cls

for /F "tokens=2 skip=2 delims=," %%D in ('WMIC Path Win32_LocalTime Get DayOfWeek /Format:csv') do (
set TAG=%%D
)

if %TAG% == 1 GOTO MO
if %TAG% == 2 GOTO DI
if %TAG% == 3 GOTO MI 
if %TAG% == 4 GOTO DO
if %TAG% == 5 GOTO FR 
if %TAG% == 6 GOTO SA
if %TAG% == 0 GOTO SO


:MO
echo Heute ist Montag der %date%
pause
GOTO ANFANG

:DI
echo Heute ist Dienstag der %date%
pause
GOTO ANFANG

:MI
echo Heute ist Mittwoch der %date%
pause
GOTO ANFANG

:DO
echo Heute ist Donnerstag der %date%
pause
GOTO ANFANG

:FR
echo Heute ist Freitag der %date%
pause
GOTO ANFANG

:SA
echo Heute ist Samstag der %date%
pause
GOTO ANFANG

:SO
echo Heute ist Sonntag der %date%
pause
GOTO ANFANG

ryan_blackdrago du hast genau das gefunden was ich Gesucht habe! :-D

Vielen Dank!

Ich habe im Skript paar Änderungen durchgeführt und schau da.. Das Batch Skript prüft den Tag nach, wenn es Dienstag ist, wird keine Kopie durchgeführt und es beendet sofort die Console.

Wenn der Tag Freitag ist, führt das Batch Datei das Robocopy Sicherung durch.

Wenn man das unter Grouppolice den Skript
unter Herunterfahren einbindet (Das ist die Antwort für tic.tac ;) ) Startet beim herunterfahren erst den Skript, Sobald der fertig ist, fährt der Rechner runter.

Überarbeitete Batch script:
Im moment Sichert der Robocopy am Freitag von C:\test1 nach \test-kopie\

Code:
@echo off
:ANFANG
cls 

for /F "tokens=2 skip=2 delims=," %%D in ('WMIC Path Win32_LocalTime Get DayOfWeek /Format:csv') do (
set TAG=%%D
)
 
if %TAG% == 1 GOTO MO
if %TAG% == 2 GOTO DI
if %TAG% == 3 GOTO MI 
if %TAG% == 4 GOTO DO
if %TAG% == 5 GOTO FR 
if %TAG% == 6 GOTO SA
if %TAG% == 0 GOTO SO
 
 
:MO
echo Heute ist Montag der %date% 
GOTO NOBACKUP
 
:DI
echo Heute ist Dienstag der %date%
GOTO NOBACKUP
 
:MI
echo Heute ist Mittwoch der %date%
GOTO NOBACKUP
 
:DO
echo Heute ist Donnerstag der %date%
GOTO NOBACKUP
 
:FR
echo Heute ist Freitag der %date%
ROBOCOPY C:\test1\ C:\test-kopie\ /MIR
GOTO NOBACKUP
 
:SA
echo Heute ist Samstag der %date%
GOTO NOBACKUP
 
:SO
echo Heute ist Sonntag der %date%
GOTO NOBACKUP

:NOBACKUP
EXIT

Vielen Dank nochmal an ryan_blackdrago :-)

Das Thema ist durch Danke an Alle! :):freaky::cool_alt:;):p
 
Zuletzt bearbeitet:
Zurück
Oben