当前位置:首页 > 叨叨念念 > Windows查看端口以及端口占用

Windows查看端口以及端口占用

叨叨念念 / 星之宇 / 2021-6-16 8:00 / 浏览:3496 / 评论:0

在日常工作中,经常会碰到启动某个程序时,提示某个端口已经被占用,导致程序无法正常启动。 或者在未正常关闭程序的情况下,端口仍然被占用。那么在Windows下如何查看端口占用情况?以及如何根据端口查找进程,如何释放端口占用呢?


Windows查看端口占用情况(Netstat命令)

netstat [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-x] [-t] [interval]

命令中各选项的含义如下:
-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 连接模板。无法与其他选项结合使用。
interval 重新显示选定的统计,各个显示间暂停的 间隔秒数。按 CTRL+C 停止重新显示统计。如果省略,则 netstat 将打印当前的配置信息一次。


1、CMD命令下查看所有所有端口:netstat -ano

150-1.png


2、查看指定端口占用的PID号:netstat -ano |findstr "端口号

150-2.png


Windows查看PID号的进程(Tasklist命令)

tasklist [/s <Computer> [/u [<Domain>\]<UserName> [/p <Password>]]] [{/m <Module> | /svc | /v}] [/fo {table | list | csv}] [/nh] [/fi <Filter> [/fi <Filter> [ ... ]]]

命令中各选项的含义如下:
/S <computer> 指定连接到的计算机或IP地址,默认本机。
/u [<Domain>\]<UserName> 指定使用哪个用户执行这个命令。
/P [password] 为指定的用户指定密码。
/M [module] 列出调用指定的DLL模块的所有进程。如果没有指定模块名,显示每个进程加载的所有模块。
/SVC 显示每个进程中的服务信息,当/fo参数设置为table时有效。
/V 显示详细信息。
/FI filter 显示一系列符合筛选器指定的进程。
/FO format 指定输出格式,有效值:TABLE、LIST、CSV。
/NH 指定输出中不显示栏目标题。只对TABLE和CSV格式有效。


1、查找到PID的进程:tasklist|findstr "PID"

150-3.png


Windows终止进程(Taskkill命令)

TASKKILL [/S system [/U username [/P [password]]]] {[/FI filter] [/PID processid | /IM imagename]} [/F] [/T]

参数列表:
/S system 指定要连接到的远程系统。
/U [domain\]user 指定应该在哪个用户上下文
执行这个命令。
/P [password] 为提供的用户上下文指定密码。如果忽略,提示输入。
/F 指定要强行终止的进程。
/FI filter 指定筛选进或筛选出查询的的任务。
/PID process id 指定要终止的进程的PID。
/IM image name 指定要终止的进程的映像名称。通配符 '*'可用来指定所有映像名。
/T Tree kill: 终止指定的进程和任何由此启动的子进程。
/? 显示帮助/用法。


1、通过PID终止进程:taskkill /F /PID "PID"

150-4.png


2、通过进程名称终止进程:taskkill /F /IM 程序名称(同名的会批量结束)

150-5.png

目前有 0 条评论

    • 昵称
    • 邮箱
    • 网址