Fraenky 10 Geschrieben 3. August 2015 Melden Teilen Geschrieben 3. August 2015 Hallo zusammen, ich würde gerne per Batch täglich ein paar Dienste neu starten. In der Batch halt net stop Dienst net start Dienst Kann ich etwas einbauen, das reagiert, wenn ein Dienst beim Beenden oder beim Starten hängen bleibt, und Ergebnisse in eine Datei ausgeben? Danke und Gruß Fränky Zitieren Link zu diesem Kommentar
pharao 5 Geschrieben 3. August 2015 Melden Teilen Geschrieben 3. August 2015 Hey, es hilft dir "sc query Dienst" für die Abfrage des Dienstes und "> C:\Datei.txt" um das Ergebnis in eine Datei zu schreiben? Beim Rest hilft dir unter Umständen dieser Link: http://stackoverflow.com/questions/3325081/how-to-check-if-a-service-is-running-via-batch-file-and-start-it-if-it-is-not-r To check a service's state, use sc query <SERVICE_NAME>. For if blocks in batch files, check the documentation. The following code will check the status of the service MyServiceName and start it if it is not running (the if block will be executed if the service is not running): for /F "tokens=3 delims=: " %%H in ('sc query "MyServiceName" ^| findstr " STATE"') do (if /I "%%H" NEQ "RUNNING" (REM Put your code you want to execute hereREM For example, the following linenet start "MyServiceName")) Explanation of what it does: Queries the properties of the service. Looks for the line containing the text "STATE" Tokenizes that line, and pulls out the 3rd token, which is the one containing the state of the service. Tests the resulting state against the string "RUNNING" As for your second question, the argument you will want to pass to net start is the service name,not the display name. LG Robert 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.