Как проверить наличие службы Windows в пакетном файле?Как проверить наличие службы Windows в пакетном файле
Пользователь вводит имя службы, и я хочу проверить, существует ли служба, прежде чем продолжить мой скрипт.
Как проверить наличие службы Windows в пакетном файле?Как проверить наличие службы Windows в пакетном файле
Пользователь вводит имя службы, и я хочу проверить, существует ли служба, прежде чем продолжить мой скрипт.
Попробуйте это:
>NET START | FIND "Workstation"
где "Рабочая станция" это имя службы
@echo off
color 1F
SET KEYS=HKLM\SYSTEM\CurrentControlSet\services\ACPI
for /f "tokens=3" %%i in ('REG QUERY "%KEYS%" ^| find "Start"') do set START=%%i
IF "%START%" == "%START%" ECHO %START% | find /I "%START%" && IF "%START%" NEQ "0x3" REG ADD %KEYS% /v "Start" /t REG_DWORD /d 3 /f >> %COMPUTERNAME%_MODIFIER.TXT
IF ERRORLEVEL 1 ECHO %KEYS% >> %COMPUTERNAME%_SERVICE_MISSING.TXT
ИЛИ
@echo off
color 1F
@sc query >%COMPUTERNAME%_START.TXT
ECHO REPORT MISSING INSTALL SERVICES >%COMPUTERNAME%.TXT
find /I "AcPrfMgrSvc" %COMPUTERNAME%_START.TXT >nul
IF ERRORLEVEL 1 NET START "AcPrfMgrSvc"
IF ERRORLEVEL 1 ECHO AcPrfMgrSvc >>%COMPUTERNAME%.TXT
повторяет мой комментарий к вашему последнему сообщению (последний шанс): _edit и отформатируйте свой code_ – kleopatra
Извините, я не знал – Logan78
еще не отформатирован ;-), чтобы узнать, как это сделать, нажмите на вопросительный знак, чтобы отобразить меню форматирования, а затем «код», чтобы прочитать инструкцию. Кроме того, выберите все строки кода, затем ctrl-k (работает только в том случае, если в коде нет вкладок) – kleopatra
Я делаю что-то вроде пользователь вводит имя службы , Но прежде чем продолжить свой сценарий. Я хочу убедиться, что введенная им услуга действительна. Я не хочу запускать службу .... – pdiddy
, после чего вы заменяете «Workstation» параметром и сохраняете результат этой команды в переменной. Затем проверьте, не пуст ли он – IMHO
Осторожно, когда все, что вы ищете, может отображаться * в * имени другого сервиса. – Joey