Netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
一般用netstat -ano 来显示所有连接的端口
各选项的含义如下:
-a 显示所有socket,包括正在监听的。
-n 以数字形式显示地址和端口号。
-r 显示核心路由表,格式同“route -e”。
-t 显示当前连接卸载状态。
-v 显示正在进行的工作。
-p proto 显示proto指定的协议的连接。
-b 显示在创建每个连接或侦听端口时涉及的可执行程序。
-e 显示以太网统计。此选项可以与 -s 选项结合使用。
-f 显示外部地址的完全限定域名(FQDN)。
-o 显示拥有的与每个连接关联的进程PID。
-q 显示所有连接、侦听端口和绑定的非侦听 TCP 端口。
-s 显示每个协议的统计。
-x 显示 NetworkDirect 连接、侦听器和共享端点。
-y 显示所有连接的 TCP 连接模板。无法与其他选项结合使用。
查找对应的端口占用的进程:netstat -ano |findstr "80" ,找到占用80端口对应的程序的PID号;
netstat -ano |findstr "80"
根据PID号找到占用端口对应的程序名:tasklist |findstr "PID号" ;
tasklist |findstr "1652"
可以看到v_apache.exe程序占用80端口。
结束该进程:taskkill /F /T /IM v_apache.exe或是taskkill /pid 1652 /F
taskkill参数选项含义:
/S system 指定要连接到的远程系统。
/U [domain\]user 指定应该在哪个用户上下文
执行这个命令。
/P [password] 为提供的用户上下文指定密码。如果忽略,提示输入。
/F 指定要强行终止的进程。
/FI filter 指定筛选进或筛选出查询的的任务。
/PID process id 指定要终止的进程的PID。
/IM image name 指定要终止的进程的映像名称。通配符 '*'可用来指定所有映像名。
/T Tree kill: 终止指定的进程和任何由此启动的子进程。