1、轮询杀掉对应端口的进程
set SERVICE_MARIADB_PORT=10007
for %%n in (%SERVICE_MARIADB_PORT%) do (
@echo find the process which use port [%%n]
for /f "tokens=1-5" %%i in ('netstat -ano^|findstr ":%%n"') do (
tasklist /FI "PID eq %%m"|find /i "PID" && (
echo PID:%%m Running, kill the process [%%m] use the port [%%n]
taskkill /F /pid %%m /t
) || echo PID:%%m Not Running
)
)
2、批量删除防火墙端口
echo ==========Set Windows Firewall Port==========
set OTHERPORT=10000,10001,10002,10003,10004,10005rem delete firewall port
FOR %%c in (%OTHERPORT%) do (
netsh advfirewall firewall delete rule name="_%%c SDK" dir=in
)
3、 批量使能Windows防火墙端口
rem Enable firewall port
FOR %%c in (%OTHERPORT%) do (
netsh advfirewall firewall add rule name="_%%c SDK" protocol=TCP dir=in localport=%%c action=allow
)
4、 使用nssm安装服务
set SERVICE_MARIADB_NAME=MariaDB
"%~dp0nssm.exe" install "%SERVICE_MARIADB_NAME%" "%~dp0autostart.bat"
"%~dp0nssm.exe" set "%SERVICE_MARIADB_NAME%" start SERVICE_AUTO_START
net start "%SERVICE_MARIADB_NAME%"
TIMEOUT /T 8
服务安装格式:
nssm install "ServiceName" "启动bat"
设置服务为开机自启动模式
nssm set "ServiceName" start SERVICE_AUTO_START
启动服务
net start "ServiceName"
5、查询当前服务状态
set SERVICE_MARIADB_NAME=MariaDB
for /f "skip=3 tokens=4" %%i in ('sc query SERVICE_MARIADB_NAME') do set "AC_Mysql_AC=%%i" &goto :next_Mariadb
:next_Mariadb
if /i "%AC_Mysql_AC%"=="RUNNING" (
echo "MariaDB" Service Status: Running.
) else (
echo "MariaDB" Service Status: Stopped.
)
查询服务状态接口
sc query "ServiceName"
6、查询当前进程是否存在,如果存在则杀掉进程
set _EXETask="notepad.exe"
tasklist /nh|find /i %_ACTask%
if ERRORLEVEL 1 (
echo "notepad.exe" is not running!
) else (
echo "notepad.exe" is running!
taskkill /f /im %_EXETask%
)
7、 停止服务
rem Delete and uninstall the MariaDB Service
reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\%SERVICE_MARIADB_NAME%"
if %ERRORLEVEL% == 1 (
ECHO. %1 not found
) else (
sc stop "%SERVICE_MARIADB_NAME%"
sc delete "%SERVICE_MARIADB_NAME%"
)
停止服务接口
sc stop "ServiceName"
8、删除服务
rem Delete and uninstall the MariaDB Service
reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\%SERVICE_MARIADB_NAME%"
if %ERRORLEVEL% == 1 (
ECHO. %1 not found
) else (
sc stop "%SERVICE_MARIADB_NAME%"
sc delete "%SERVICE_MARIADB_NAME%"
)
删除服务接口
sc delete "ServiceName"