windows批处理关闭接口进程,cmd关闭接口进程

cmd 关闭进程java

1. netstat -ano |findstr  端口号    得到进程号   (findstr 很像linux下的grep命令)

2.  taskkill /pid  进程号  /f 

3.  netstat -ano |findstr  端口号 可以再验证下该端口还开着没

如何用dat批处理文件关闭某端口对应程序-Windows自动化命令

如何用dat批处理文件关闭某端口对应程序?

网上找到的大部分都是手动操作,第一步先查出端口,第二步在根据上一步查到的端口手动去关闭进程。但我的需求不是这样的,我需要全自动处理。用于 dubbo 服务进程在 Windows 环境下的关闭。如果 Linux 环境,则不需那么辛苦了。

找了大半天,终于在百度知道上得到参考案例(或许是我使用的关键词不对),并成功试验,感谢相关贡献者。

答案一:

for /f "tokens=1-5 delims= " %%a in ('"netstat -ano|findstr "^:指定端口号""') do taskkill /pid %%e

答案二:

@echo off
set port=1234
for /f "tokens=1-5" %%i in ('netstat -ano^|findstr ":%port%"') do taskkill /pid %%m

我自己试验成功的脚本如下:

@echo off
set port=20812
for /f "tokens=1-5" %%i in ('netstat -ano^|findstr ":%port%"') do (
    echo kill the process %%m who use the port %port%
    taskkill /pid %%m
)

参考

循环读取一批端口,并查询对应PID是否存在,若存在则关闭,脚本如下:

@echo off
for /l %%n in (20801,1,20812) 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 运行中,kill the process [%%m] who use the port [%%n]
        taskkill /F /pid %%m
        ) || echo PID:%%m 未运行 
    )
)

参考

杀死PID为4276的进程

E:\android-sdk-windows\tools>taskkill /PID 4276
错误: 无法终止 PID 为 4276 的进程。

原因: 只能强行终止这个进程(带 /F 选项)。

E:\android-sdk-windows\tools>taskkill /F /PID 4276
成功: 已终止 PID 为 4276 的进程。

注意:  在cmd窗口使用单%,在写批处理文本要换成双%号

猜你喜欢

转载自blog.csdn.net/baidu_29701003/article/details/83009844
今日推荐