@echo off
|
:: 方式二:根据主类名称找到进程号,然后杀进程
|
setlocal
|
set JPS=jps
|
set MAIN_CLASS=com.vci.server.ServiceManagerMain
|
|
for /f "tokens=1" %%a in ('%JPS% -l ^| findstr /i "%MAIN_CLASS%"') do (
|
set PID=%%a
|
)
|
|
if defined PID (
|
echo Stopping %MAIN_CLASS% PID %PID%...
|
:: taskkill /f /pid %PID% 代表强制杀进程。
|
:: 如果不希望强制杀进程,而是希望发送一个关闭信号给进程,让进程优雅退出(相当于 ctrl + c)。可将命令替换为 windows-kill -2 %PID%
|
:: 优雅退出的方式需要依赖一个 windows-kill.exe 程序(可在github下载:https://github.com/ElyDotDev/windows-kill/releases/tag/1.1.4)
|
taskkill /f /pid %PID%
|
echo %MAIN_CLASS% is stopped.
|
rem exit
|
) else (
|
echo %MAIN_CLASS% is not running.
|
)
|
|
::结束redis
|
taskkill /f /im redis-server.exe
|
|
endlocal
|