72036
Nov 18, 2008, updated at 20:25:25 (UTC)
4768
6
0
PROBLEM - Auswertung von Log-Dateien
Hallo,
ich habe eine Batch-Datei programmiert, mit der ich eine Datei von meinem Rechner in ein Verzeichnis auf einen Server kopieren kann.
Zudem habe ich mit dem Befehl: >> c:\log\logdatei.txt
eine Log-Datei schreiben lassen, die mir anzeigt ob die Übertragung geklappt hat oder nicht.
Soweit funktioniert das auch alles.
Nun habe ich aber ein Problem.
Die zu kopierende Datei soll nicht nur auf einen Server, sondern auf mehrere verschiedene kopiert werden.
Jetzt brauche ich hierzu auch eine Log-Datei, die mir nicht nur anzeigt, ob das geklappt hat oder nicht.
Sie müsste mir auch anzeigen können, auf welchen Servern ein Problem bei der Übertragung aufgetreten ist, damit man dort den Vorgang nochmal wiederholen kann.
Kann mir hierbei jemand helfen??
Alina
ich habe eine Batch-Datei programmiert, mit der ich eine Datei von meinem Rechner in ein Verzeichnis auf einen Server kopieren kann.
Zudem habe ich mit dem Befehl: >> c:\log\logdatei.txt
eine Log-Datei schreiben lassen, die mir anzeigt ob die Übertragung geklappt hat oder nicht.
Soweit funktioniert das auch alles.
Nun habe ich aber ein Problem.
Die zu kopierende Datei soll nicht nur auf einen Server, sondern auf mehrere verschiedene kopiert werden.
Jetzt brauche ich hierzu auch eine Log-Datei, die mir nicht nur anzeigt, ob das geklappt hat oder nicht.
Sie müsste mir auch anzeigen können, auf welchen Servern ein Problem bei der Übertragung aufgetreten ist, damit man dort den Vorgang nochmal wiederholen kann.
Kann mir hierbei jemand helfen??
Alina
Please also mark the comments that contributed to the solution of the article
Content-Key: 102090
Url: https://administrator.de/contentid/102090
Printed on: April 19, 2024 at 00:04 o'clock
6 Comments
Latest comment
Nur als kleiner Verbesserungsvorschlag.
Wenn du nur nach errorlevel 0 (also erfolgreiche Kopie) prüfst udn alles andere als Fehlerhaft ansiehst klapt es auch wen du z.B. mal einen anderen Errorlevel größer 1 hast.
copy "zu kopierende Datei" "Zielverzeichnis"
if errorlevel 0 goto yes else goto no
:no
...
:yes
...
Wenn du nur nach errorlevel 0 (also erfolgreiche Kopie) prüfst udn alles andere als Fehlerhaft ansiehst klapt es auch wen du z.B. mal einen anderen Errorlevel größer 1 hast.
copy "zu kopierende Datei" "Zielverzeichnis"
if errorlevel 0 goto yes else goto no
:no
...
:yes
...
Hmmmjein, miniversum,
Die Aussage ist richtig, aber der Beweis/das Beispiel genau verkehrt herum.
Der Befehl "md" ohne Parameter erzeugt einen Fehler/ein ERROLEVEL größer 0.
Dann dürfte das hier:
[das ">" am Zeilenbeginn ist der Prompt, NICHT mit eintippen]
...nicht passieren.....
Richtig(er) herum wäre es so:
-->denn "if not ErrorLevel 1" heißt ja auf deutsch "wenn ErrorLevel nicht 1 oder größer ist"
[schlaubergerModus an]
Etwas anderes wäre die Prüfung auf textuelle Gleichheit
aber das knicken wir mal wieder ganz schnell...
[/schlaubergerModus aus]
Die lesbarste und stilistisch beste ist ohnehin der bastla-Standard
Grüße
Biber
Die Aussage ist richtig, aber der Beweis/das Beispiel genau verkehrt herum.
if errorlevel 0 goto yes else goto no
Nochmal zum Nachturnen am CMD-Prompt.Der Befehl "md" ohne Parameter erzeugt einen Fehler/ein ERROLEVEL größer 0.
Dann dürfte das hier:
[das ">" am Zeilenbeginn ist der Prompt, NICHT mit eintippen]
>md 2>nul & if errorlevel 0 (echo errlevel 0) else echo errlevel-other
errlevel 0
Richtig(er) herum wäre es so:
>md 2>nul & if not errorlevel 1 (echo errlevel 0) else echo errlevel-other
errlevel-other
[schlaubergerModus an]
Etwas anderes wäre die Prüfung auf textuelle Gleichheit
IF "%errorlevel%"=="0" goto :allesPrima
[/schlaubergerModus aus]
Die lesbarste und stilistisch beste ist ohnehin der bastla-Standard
(irgendeinbefehl) || goto :Fehler
-bzw-
(irgendeinbefehl) && goto :keinFehler_oderZumindestKeinErrorlevelGesetzt
Grüße
Biber