Windows服务、防火墙、进程相关bat

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,10005

rem 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" 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值