如何在cmd中使用服务名称的一个片段停止/启动windows服务。示例:
NET STOP *part_of_name_of_service*
NET START *part_of_name_of_service*例如。mysql有许多版本的“服务名称”。
MySQL57
wampmysqld
etc, etc, etc其想法是停止/启动任何包含"mysql“字的服务。就像这样:
net start *MySQL*但不幸的是,我的尝试会产生错误:“服务名称无效”。
1.使用以下命令将服务名称转储到文件:
REG QUERY "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services" > services.txt
findstr /i /r "mysql" services.txt
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MySQL
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\wampmysqld64但我无法完成循环
2.任务终止
call :winservices "*mysql*"
:: funcion winservices
@echo off
goto:eof
:winservices
set winservices=%1
taskkill /f /im "%winservices%" /t
goto:eof但是"*mysql*"不起作用(只有"mysql*"起作用)
在尝试删除服务时,也会发生相同的情况:
sc delete *MySQL*我是怎么做到的?
发布于 2022-02-11 21:56:14
找到解决方案这里 (仅用于杀死服务)
taskkill /FI "IMAGENAME eq httpd*" /T /F
taskkill /FI "IMAGENAME eq mysql*" /T /F发布于 2020-03-04 14:25:59
使用PowerShell非常简单:
Stop-Service *mysql*Start-Service和Remove-Service的工作原理相同,后者只能从PowerShell 6开始使用。
https://serverfault.com/questions/1005487
复制相似问题