flicflac
Goto Top

Logfile während Verzeichniskopie erstellen und bei Fehler Aktion auslösen

Hallo

Hier meine zweite Frage...

Link zu Frage1: Anzahl der Verzeichnisse innerhalb eines Batch bestimmen

Ich habe ein einfaches Batch zur Sicherung von Verzeichnissen erstellt (Testphase). Nicht sehr elegant aber tut was es soll.


::--- SaveFiles.cmd
::-- Sichert F:\CAD; F:\DATABASE; G:\PROFI und G:\DATEN nach J:\DATASAVE\%DATUM%
j:
CD DATASAVE
md %DATE%
md %date%\CAD
md %date%\DATABASE
md %date%\PROFI
md %date%\DATEN
xcopy f:\CAD\*.* j:\DATASAVE\%DATE%\CAD /s/e
xcopy f:\DATABASE\*.* j:\DATASAVE\%DATE%\DATABASE /s/e
xcopy g:\PROFI\*.* j:\DATASAVE\%DATE%\PROFI /s/e
xcopy g:\DATEN\*.* j:\DATASAVE\%DATE%\DATEN /s/e
::--- End SaveFiles.cmd


Die Daten liegen auf einem Novell Server, die Batches werden per Scheduler gestartet und jede Nacht ausgeführt. Vorher werden auf dem Server Applicationen gestoppt um das Kopieren offenener Dateien zu verhindern. Da das Schließen der Applicationen auch mal schief gehen kann werden dann zwangsläufig Fehler beim Kopieren entstehen.
Nun möchte jedesmal ich ein Log in dem Verzeichnis %Date% erstellen, der Kopiervorgang soll aber trotz evtl. Fehler fortgesetzt werden. Die Frage ist wie?
Ich hatte schon mal was dazu gefunden, finde es aber nicht wieder. Vielleicht liegt es daran dass ich derzeit den Zigarettenverbrauch auf null gesenkt und den Taschentuchverbrauch auf 10 Pakete /Tag gesteigert habe.

Als Krönung soll dann beim Auftreten eines Fehlers eine Mail hausintern und per inet an eine weitere Adresse versendet werden. Das wäre dann die notwendige Aktion die passieren soll.
Die Frage stell ich dann mal in Thread Nr. 3 Über Novell Sever eMail per Batch versenden

THX
flic

Content-ID: 40781

Url: https://administrator.de/contentid/40781

Ausgedruckt am: 16.11.2024 um 05:11 Uhr

Biber
Biber 25.09.2006 um 07:33:48 Uhr
Goto Top
Moin flicflic,

bei Verwendung des zusätzlichen Schalters "/C" bei XCopy wird der Kopiervorgang trotz Fehler(n) fortgesetzt.
Und ">>j:\datasave\%date%\xcopylog.txt 2>&1" leitet es in eine Logdatei.

Statt dem Datum %date% würde ich eine Umformatierung in %MyDate% empfehlen, so dass es im Format yyyy-mm-tt vorliegt.

Beispiele zur Datumsformatierung findest Du in über die Forumssuche.

Gruß
Biber
flicflac
flicflac 26.09.2006 um 10:59:49 Uhr
Goto Top
Hallo Biber

Auch hier meinen besten Dank, funktioniert face-smile

Aber wie bekomme ich mit ob ein Fehler aufgetreten ist?
Ja nach Fehler oder kein Fehler möchte ich ja dann zwei entsprechende Mails versenden. Aber zu den Mails später, erst muss alles funktionieren.
flicflac
flicflac 26.09.2006 um 11:11:05 Uhr
Goto Top
Ich glaub ich bekomms so hin:


if %errorlevel%==0 goto NOERRORMSG
::if not %errorlevel%==0 goto ERRORMSG

:ERRORMSG
::-- Fehlermeldung senden
goto eof:

:NOERRORMSG
::-- Meldung ohne Fehler senden
Biber
Biber 27.09.2006 um 22:58:55 Uhr
Goto Top
Hmmmja, flicflac,
falls du den kleinen Tippfehler noch nicht selbst gefunden hast:
Statt "goto eof:" muss es "goto :eof" heißen.

[Aus der Hilfe "goto /?" am CMD-Prompt:
...
Der GOTO-Befehl unterstützt jetzt die Marke :EOF. Dadurch wird die Bearbeitung
am Ende der aktuellen Batchdatei fortgesetzt. Das ist eine einfache
Möglichkeit, eine Batchdatei zu beenden, ohne ein Sprungziel zu definieren.
...

Ich denke, Du kannst auch diesen Beitrag auf "gelöst" setzen.

Gruß
Biber
flicflac
flicflac 28.09.2006 um 08:52:38 Uhr
Goto Top
@ Biber

jo, Fehler schon bemerkt und korrigiert.


geht jetzt alles. Nochmals besten Dank.

flic