PDA

Просмотр полной версии : windows bat - как определить наличие сервиса?


Дикс
25.02.2010, 21:58
устанавливаю сервис апач батником, пишет что он уже установлен

хочу сделать проверку наличия сервиса в системе

возможно ли это?

SpangeBoB
25.02.2010, 22:02
sc query ИМЯ_СЕРВИСА > nul && echo "YES" || echo "NO"

Дикс
25.02.2010, 23:29
в любом случае выводит YES
пробовал имя сервиса в кавычках - тоже самое

SpangeBoB
25.02.2010, 23:33
http://img683.imageshack.us/img683/5374/54396093.png (http://img683.imageshack.us/i/54396093.png/)

Проверяй точность команды наверно ввел & вместо &&.

Дикс
26.02.2010, 07:35
не работает
видимо потому что у тебя виста или семерка, а у меня ХР

http://img6.imageshack.us/img6/7805/cmdh.jpg

SpangeBoB
26.02.2010, 10:34
Тогда попробовать:
sc query Apache2.2 | findstr /i "SERVICE_NAME" && echo "Y" || else "N"

net start | findstr /i "DNS Client" && echo "Y" || echo "N"

Дикс
27.02.2010, 11:51
спасибо, первый способ подходит
но ты опечатался, не else а echo:


sc query Apache2.2 | findstr /i "SERVICE_NAME" && echo "Y" || echo "N"