Ody 0 Geschrieben 3. März 2016 Melden Teilen Geschrieben 3. März 2016 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üßeOdy Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 3. März 2016 Melden Teilen Geschrieben 3. März 2016 Und wie wäre es mit echo %DATE% %TIME% >> log.log taskkill /IM notepad.exe /F /T >> log.log Zitieren Link zu diesem Kommentar
Ody 0 Geschrieben 3. März 2016 Autor Melden Teilen Geschrieben 3. März 2016 (bearbeitet) Hallo Expert, so habe ich es auch hinbekommen, ich hätte aber gerne Datum und Uhreit vor jeder Ausgabe damit auch dieVerzö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 3. März 2016 von Ody Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 3. März 2016 Melden Teilen Geschrieben 3. März 2016 Dann musst Du Powershell nehmen. Z.B. https://technet.microsoft.com/de-de/library/ee177004.aspx Übrigens: Nachträglich ein herzlichen Willkommen Mein Name ist Zahni ;) Zitieren Link zu diesem Kommentar
Ody 0 Geschrieben 3. März 2016 Autor Melden Teilen Geschrieben 3. März 2016 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 wastaugliches 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. Zitieren Link zu diesem Kommentar
Beste Lösung Cybquest 36 Geschrieben 4. März 2016 Beste Lösung Melden Teilen Geschrieben 4. März 2016 echo|set /p=%DATE% %TIME% >> log.log taskkill /IM notepad.exe /F /T >> log.log ...durch set /p wird der Zeilenumbruch unterdrückt :-) Zitieren Link zu diesem Kommentar
Ody 0 Geschrieben 4. März 2016 Autor Melden Teilen Geschrieben 4. März 2016 Hallo Cybquest, super vielen Dank genau das was ich gesucht habe :-) Beste GrüßeOdy Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.