Вы должны войти, чтобы создавать сообщения и темы.

Как управлять службами через cmd? [Решено]

Всем привет, подскажите. Как через командную строку включать и отключать службы. К примеру мне нужна команда чтобы остановить службу и отключить, и так же включить и запустить. Если кто знает пример команды, напишите. Или может быть, кто-нибудь знает статью по этой теме.

Привет, Александр 🖐
Вот ссылка по теме:
Команда SC.

Привет, например установить состояние отключена и остановить:

sc config RemoteAccess start= disabled
net stop RemoteAccess

 

Пример батника. Остановить службы по списку (1) или запустить и установить состояние (2). Список внизу.

Спойлер

@echo off

for /f "delims=:" %%A in ('findstr /xnc:"<Services>" "%~f0"') do set "Skip=%%A"

set Mode=0
call :ServicesHandler

echo 1 - Stop Services
echo 2 - Start Services
echo.

:Input
set /p "Mode=Mode: "
for %%M in (1,2) do if %Mode%==%%M goto :Start
goto :Input

:Start
echo.
call :ServicesHandler
echo Done!
pause
exit /b

:ServicesHandler
for /f "usebackq skip=%Skip% tokens=1,2" %%A in ("%~f0") do (
if "%%A"=="</Services>" echo. & exit /b
echo %%A
if %Mode%==1 (
sc config %%A start= disabled
net stop %%A
)
if %Mode%==2 (
sc config %%A start= %%B
net start %%A
)
)
exit /b

<Services>
LanmanWorkstation auto
LanmanServer auto
RemoteAccess demand
RemoteRegistry demand
</Services>

 

Лайкнули Александр и Pixi
АлександрPixi
Цитата: KiloSub от 16.10.2020, 19:22

Привет, например установить состояние отключена и остановить:

 
 
 
 
sc config RemoteAccess start= disabled
net stop RemoteAccess
sc config RemoteAccess start= disabled net stop RemoteAccess
 
sc config RemoteAccess start= disabled
net stop RemoteAccess

 

Пример батника. Остановить службы по списку (1) или запустить и установить состояние (2). Список внизу.

Спойлер

 
 
 
 
@echo off
 
for /f "delims=:" %%A in ('findstr /xnc:"<Services>" "%~f0"') do set "Skip=%%A"
 
set Mode=0
call :ServicesHandler
 
echo 1 - Stop Services
echo 2 - Start Services
echo.
 
:Input
set /p "Mode=Mode: "
for %%M in (1,2) do if %Mode%==%%M goto :Start
goto :Input
 
:Start
echo.
call :ServicesHandler
echo Done!
pause
exit /b
 
:ServicesHandler
for /f "usebackq skip=%Skip% tokens=1,2" %%A in ("%~f0") do (
if "%%A"=="</Services>" echo. & exit /b
echo %%A
if %Mode%==1 (
sc config %%A start= disabled
net stop %%A
)
if %Mode%==2 (
sc config %%A start= %%B
net start %%A
)
)
exit /b
 
<Services>
LanmanWorkstation auto
LanmanServer auto
RemoteAccess demand
RemoteRegistry demand
</Services>
@echo off for /f "delims=:" %%A in ('findstr /xnc:"<Services>" "%~f0"') do set "Skip=%%A" set Mode=0 call :ServicesHandler echo 1 - Stop Services echo 2 - Start Services echo. :Input set /p "Mode=Mode: " for %%M in (1,2) do if %Mode%==%%M goto :Start goto :Input :Start echo. call :ServicesHandler echo Done! pause exit /b :ServicesHandler for /f "usebackq skip=%Skip% tokens=1,2" %%A in ("%~f0") do ( if "%%A"=="</Services>" echo. & exit /b echo %%A if %Mode%==1 ( sc config %%A start= disabled net stop %%A ) if %Mode%==2 ( sc config %%A start= %%B net start %%A ) ) exit /b <Services> LanmanWorkstation auto LanmanServer auto RemoteAccess demand RemoteRegistry demand </Services>
 
@echo off

for /f "delims=:" %%A in ('findstr /xnc:"<Services>" "%~f0"') do set "Skip=%%A"

set Mode=0
call :ServicesHandler

echo 1 - Stop Services
echo 2 - Start Services
echo.

:Input
set /p "Mode=Mode: "
for %%M in (1,2) do if %Mode%==%%M goto :Start
goto :Input

:Start
echo.
call :ServicesHandler
echo Done!
pause
exit /b

:ServicesHandler
for /f "usebackq skip=%Skip% tokens=1,2" %%A in ("%~f0") do (
if "%%A"=="</Services>" echo. & exit /b
echo %%A
if %Mode%==1 (
sc config %%A start= disabled
net stop %%A
)
if %Mode%==2 (
sc config %%A start= %%B
net start %%A
)
)
exit /b

<Services>
LanmanWorkstation auto
LanmanServer auto
RemoteAccess demand
RemoteRegistry demand
</Services>

 

Спасибо, то что нужно!

Цитата: Сергей от 16.10.2020, 19:02

Привет, Александр 🖐
Вот ссылка по теме:
Команда SC.

Благодарю за статью