Batch zwei Kriterien checken

Hallo,

ich habe folgendes Problem mit einer Batchdatei:

Ich möchte gerne beim Aufruf püfen, ob der Apache Dienst gestartet ist:

falls Apache läuft->prüfen ob MySQL Dienst läuft
sonst->Apache starten->prüfen ob MySQL Dienst läuft

falls MySQL Dienst läuft->Ausgeben „MySQL läuft“
sonst->MySQL starten->Ausgeben „Mysql läuft“

sowit ich weiss ist eine kombinierte Kontrolle beider Dienste nicht möglich mittels Batch?!?

Nun ja, habe also folgende Datei und lediglich der Apache läuft an, danach wird allerdings mysql nicht gestartet…

wäre nett, wenn ihr mal drüberguckt:

@ECHO OFF
tasklist | find „apache.exe“ >nul
IF ERRORLEVEL 1 GOTO apachestart
GOTO mysqlcheck

mysqlcheck

tasklist | find „mysqld-nt.exe“ >nul
IF ERRORLEVEL 1 GOTO mysqlstart
ECHO MySQL läuft

apachestart

C:\Programme\wos_1.1.2\apache2\bin\apache.exe
GOTO mysqlcheck

mysqlstart

C:\Programme\wos_1.1.2\mysql\bin\mysqld-nt.exe
ECHO MySQL läuft

Danke und Grüße

peeayoo

Hallo peeayoo,

Nun ja, habe also folgende Datei und lediglich der Apache
läuft an, danach wird allerdings mysql nicht gestartet…

Du startest den Indianer ein zeites mal, wenn schon alles läuft.
Nach „ECHO MySQL läuft“ fehlt ein GOTO

MfG Peter(TOO)

@ECHO OFF
tasklist | find „apache.exe“ >nul
IF ERRORLEVEL 1 GOTO apachestart
GOTO mysqlcheck

mysqlcheck

tasklist | find „mysqld-nt.exe“ >nul
IF ERRORLEVEL 1 GOTO mysqlstart
ECHO MySQL läuft

apachestart

C:\Programme\wos_1.1.2\apache2\bin\apache.exe
GOTO mysqlcheck

mysqlstart

C:\Programme\wos_1.1.2\mysql\bin\mysqld-nt.exe
ECHO MySQL läuft

Danke und Grüße

Hallo Peter,

danke dir. Hab das Problem mittlerweile gefunden. Es lag definitiv nicht an einem doppelten Start des Indianers…der wurde wirklich nur einmal gestartet. Die Apache.exe muss anders gestartet werden, da sie sonst die CMD blockt und hängen bleibt.

start C:\Pfad\zur\apache.exe

das gleiche gilt für die mysqld-nt.exe.

Danke dir trotzdem

Grüße

Adam