Jump to content

Batch mit Logfile


Direkt zur Lösung Gelöst von Cybquest,
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo zusammen,

 

ich habe bereits etwas recherchiert aber nicht wirklich eine Lösung gefunden.

 

http://www.mcseboard.de/topic/191108-taskkill-sämtliche-ausgaben-in-txt-schreiben/?hl=%2Bbatch+%2Blog

Hier war bereits ein erster Ansatz ersichtlich der geholfen hat Thema "2>&1" ergänzen damit auch dies ins Logfile umgelenkt wird.

 

http://www.mcseboard.de/topic/184098-erfolgreich-nicht-erfolgreich-batch-in-log-file-schreiben/?hl=%2Bbatch+%2Blog

Hier sind leider Keine Antworten enthalten

Ich hoffe hier kann mir jemand weiterhelfen.
Nun zu meinem Anliegen:

 

Ich möglich eine Detailgenau Protokollierung in ein Logfile schreiben wo jeder Eintrag mit Datum %DATE% und Zeit %TIME% beginnt.
Beispiel taskkill:

@echo off
taskkill /IM notepad.exe /F /T >> .\tmp.log 2>&1
pause

Funktioniert super, aber eben ohne Datum und Uhrzeit vorneweg. Was auch immer ich versucht habe ich hab es nie vor die Zeile der eigentlichen Ausgabe bekommen.

 

Resultat tmp.log:

ERFOLGREICH: Der Prozess mit PID 1248 (untergeordnetem Prozess von PID 3608) wurde beendet.
FEHLER: Der Prozess "notepad.exe" wurde nicht gefunden.
ERFOLGREICH: Der Prozess mit PID 10420 (untergeordnetem Prozess von PID 3608) wurde beendet.
ERFOLGREICH: Der Prozess mit PID 1248 (untergeordnetem Prozess von PID 3608) wurde beendet.
FEHLER: Der Prozess "notepad.exe" wurde nicht gefunden.

Das ganze ist bestimmt mit einer IF Schleife lösbar, nur hab ich dazu leider zu wenig Kenntnisse in der Hoffnung auf Erleuchtung durch euch.
Gleich vorweg noch ein paar Fragen, Die Logdatei führt mehrere exen aus somit werde ich auch bestimmt eine verschachtelte IF Schleife brauchen.
Hier noch ein Beispiel:

for /f %%i in ('vmrun -T ws getGuestIPAddress %VM%') do Set ipvm=%%i

Dies ermittelt die IP-Adresse eine Virtuellen Maschine unter vmware Workstation (%VM% Pfad zur .vmx Datei) und schreibt die IP-Adresse in %IPVM%

Bekomm ich das auch in die Logdatei (Meldungen der exen natürlich vorausgesetzt), ansonsten schreibe ich selbst ein Eintrag wie z.B.

echo %DATE% %TIME% vmware TESTSYSTEM wurde gestartet mit dem Errorlevel: %errorlevel%>> .\tmp.log

Ein Errorlevel auszugeben scheint nicht unbedingt zielführend, da die Werte von exe zu exe abweichen und meist ein 128 oder 9009 zurückgibt.
Muss man das Errorlevel eventuell zurücksetzten wenn immer wieder in einer Batch abgefragt wird? SETLOCAL ist z.B. auch gesetzt wobei das vermutlich kein Zusammenhang hat.

 

Ich hoffe das sind nicht zu viele Fragen auf einmal. Vielen Dank im voraus für eure Feedback

Grüße
Ody
 

 


 

Link zu diesem Kommentar

Hallo Expert,

 

so habe ich es auch hinbekommen, ich hätte aber gerne Datum und Uhreit vor jeder Ausgabe damit auch die
Verzögerungen der einzelnen Aufgaben ins Auge stechen. Hier ein Beispiel:

 

  ################ Start Batch deaktivieren ################
02.03.2016 18:15:01,62 Beenden wurde vom Benutzer initiiert...
02.03.2016 18:15:08,59 Es wurde versucht Notepad.exe zu beenden. Resultat:
02.03.2016 18:15:11,31 FEHLER: Der Prozess "notepad.exe" wurde nicht gefunden.
02.03.2016 18:15:11,37 Es wurde versucht Notepad.exe zu beenden. Resultat:
02.03.2016 18:15:16,29 ERFOLGREICH: Der Prozess mit PID 148 (untergeordnetem Prozess von PID 3608) wurde beendet.
02.03.2016 18:15:16,37 usw....
 ################ Ende Batch deaktivieren ################
 ################ Start Batch aktivieren ################
02.03.2016 18:22:15,32 Starten wurde vom Benutzer initiiert...
02.03.2016 18:22:15,38 Notepad wurde gestartet mit dem Errorlevel: 128
02.03.2016 18:22:20,31 usw...
 ################ Ende Batch aktivieren ################
bearbeitet von Ody
Link zu diesem Kommentar

Hallo Zahni,

 

vielen Dank für den freundlichen Empfang :)

 

Ich habe fast befürchtet das es auf Powershell oder autoit rauslaufen könnte, als "nicht Scripter" ist das mehr als mühsam da was
taugliches zusammen zubekommen.

 

zudem funktioniert Batch fast immer ohne großartig im OS was aktivieren zu müssen.

 

Ich wäre daher dankbar wenn jemand noch Ideen hat.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...