如何查看端口号是否被占用

在网络程序的调试过程中,经常发生一些出乎意料的事情,比如创建一个TCP服务失败,这时候往往需要查看系统的网络情况,最常用的网络抓包当然非WireShark模式。但往往很多时候只需要查看某个端口的使用情况,它到底被那个进程(对应PID)占用了,或者你还需要把它Kill掉。如果你在Windows操作系统,你可以使用netstat命令来查询PID,然后可以打开任务管理器,查看这个PID对应的进程名;如果PID没有显示,菜单》查看》选择列》选中PID即可;得知进程后,我们可以将进程杀掉。下面我简单描述一下我所了解的在Windows和Linux系统下处理方式。(假如我们需要确定谁占用了我们的9010端口)

1、Windows平台
在windows控制台窗口下执行:
netstat -nao | findstr "9010"
TCP
127.0.0.1:9010 0.0.0.0:0 LISTENING 3017

你看到是PID为3017的进程占用了9010端口,如果进一步你想知道它的进程名称,你可以使用如下命令:

tasklist | findstr "3017"

如果你想杀死这个进程,你当然可以用前面描述的那种方法,在任务管理器里把它KILL了,但如果你喜欢高效一点,那么用taskkill命令就可以了。

taskkill /pid 3017

那么这个进程就灰灰湮灭了:)

2、Linux

如果你是个Linux爱好者,那个这个命令你应该很熟了,

netstat -pan | grep 9010

如果你稍微仔细一点,你会发现,用的都是netsta命令,事实上,netstat是一个比较通用的网络统计命令,几乎适用于所有现在流行的操作系统,无论是Linux,Window,还是其他Unix,或者Unix-like操作系统,而且用法基本一致。

下面是一个对Windows系统中netstat命令行参数的详细解释。

格式:

netstat [-a] [-e] [-n] [-o] [-p Protocol] [-b] [-r] [-s] [-v] [Interval]

参数说明:

-a 显示所有连接和监听端口。
-n 以数字形式显示地址和端口号。

-o 显示与每个连接相关的所属进程 ID。

-p 在Windows系统中,该选项用于指定默认情况的子集。proto 显示 proto 指定的协议的连接;proto 可以是下列协议之一:
TCP、UDP、TCPv6 或 UDPv6。

如果与 -s 选项一起使用以显示按协议统计信息,proto 可以是下列协议之一:
IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP
或 UDPv6。

-b
显示包含于创建每个连接或监听端口的可执行组件。在某些情况下已知可执行组件拥有多个独立组件,并且在这些情况下;包含于创建连接或监听端口的组件序列被显示。这种情况下,可执行组件名在底部的
[] 中,顶部是其调用的组件,等等,直到 TCP/IP 部分。注意此选项
可能需要很长时间,如果没有足够权限可能失败。

-e
显示以太网统计信息。此选项可以与 -s选项组合使用。

-s 显示按协议统计信息。默认地,显示 IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的统计信息。

-r 显示路由表。

-v 与 -b 选项一起使用时将显示包含于为所有可执行组件创建连接或监听端口的组件。

interval
重新显示选定统计信息,每次显示之间暂停时间间隔(以秒计)。按 CTRL+C 停止重新显示统计信息。如果省略,netstat
显示当前
配置信息(只显示一次)。

如何查看端口号是否被占用,布布扣,bubuko.com

时间: 2024-10-09 17:21:09

如何查看端口号是否被占用的相关文章

查看端口号是否被占用

Win+R  cmd 输入命令:netstat -ano,列出所有端口的情况.比如是49157,首先找到它. 查看被占用端口对应的PID,输入命令:netstat -aon|findstr "49157",回车,记下最后一位数字,即PID,这里是2720 打开Windows的任务管理器,点击上面的详细信息,然后找到pid为2720 的进程,然后结束掉 循环找下去,一直到该端口号不被占用为止

linux查看端口号是否被占用

netstat -ntupl n表示不查询dns t表示tcp协议 u表示udp协议 p表示查询占用的程序 l表示查询正在监听的程序   查看那个进程占用了xxx端口 lsof -i:xxx 查看进程号为xxx的进程在哪里 ps -ef|grep xxx ps -ef |grep  程序名 netstat -nltp |grep 端口号或服务名

Linux下查看端口被哪个程序占用

Linux如何查看端口被哪个进程占用的方法,使用工具lsof,netstat: 1.lsof -i: 端口号 lsof命令用于查看你进程开打的文件,打开文件的进程,进程打开的端口(TCP.UDP).找回/恢复删除的文件.是十分方便的系统监视工具,因为lsof命令需要访问核心内存和各种文件,所以需要root用户执行. 如果系统没有lsof工具,可以通过yum安装之. yum install lsof 选项: -a:列出打开文件存在的进程:  -c<进程名>:列出指定进程所打开的文件:  -g:列

linux如何查看端口被哪个进程占用的方法

linux如何查看端口被哪个进程占用的方法: 1.lsof -i:端口号2.netstat -tunlp|grep 端口号 都可以查看指定端口被哪个进程占用的情况[步骤一]lsof -ilsof -i 用以显示符合条件的进程情况,lsof(list open files)是一个列出当前系统打开文件的工具.以root用户来执行lsof -i命令,[步骤二]lsof -i:端口号lsof -i:端口号,用于查看某一端口的占用情况,比如查看22号端口使用情况,lsof -i:22[步骤三]netsta

调试技巧--Windows端口号是否被占用

调试技巧--Windows端口号是否被占用 一.端口概念 10.0.0.0~10.255.255.255,172.16.0.0~172.16.255.255, 192.168.0.0~192.168.255.255.端口概念在 网络技术中,端口(Port)大致有两种意思:一是物理意义上的端口,比如,ADSL Modem.集线器.交换机.路由器用于连接其他网络设备的接口,如RJ-45端口.SC端口等等.二是逻辑意义上的端口,一般是指TCP/IP协议中的 端口,端口号的范围从0到65535,比如用于

linux如何查看端口被哪个进程占用

本文介绍linux如何查看端口被哪个进程占用的方法: 1.lsof -i:端口号 2.netstat -tunlp|grep 端口号 都可以查看指定端口被哪个进程占用的情况 [步骤一]lsof -i lsof -i 用以显示符合条件的进程情况,lsof(list open files)是一个列出当前系统打开文件的工具.以root用户来执行lsof -i命令 [步骤二]lsof -i:端口号 lsof -i:端口号,用于查看某一端口的占用情况,比如查看22号端口使用情况,lsof -i:22 [步

linux 查看端口号命令

Linux下如果我们需要知道2809号端口的情况的话,我们可以这样,如下命令: $netstat -pan|grep 24800 tcp        0      0 0.0.0.0:24800           0.0.0.0:*               LISTEN      4496/synergys        tcp        0      0 192.168.1.104:24800     192.168.1.106:49479     ESTABLISHED 4496

如何查看端口号被占用

在启动某软件时,不能正常启动说是端口被占emm~~我就不信了,胳膊还能别过大腿. 两个问题: 1.怎么查看端口被占,谁占用的 2.如何解决呢 OK,有了问题咱们就有事做了 一:先打开cmd命令符,输入 netstat -ano,列出正在活动的链接 然后在这些列表中我们查找被占用的端口.例如这个49666的,它的PID是1356,俺们就来查看哪个进程或者程序占用了 输入tasklist|findstr "1356",回车 bingo,找到了. 或者你在任务管理器中查找也行(win10为例

端口号占用 使用命查看端口号 和杀死进程

开始---->运行---->cmd,或者是window+R组合键,调出命令窗口 C:\Windows\System32 按住 shift键 调出命令窗口 输入命令:netstat -ano,列出所有端口的情况.在列表中我们观察被占用的端口 查看被占用端口对应的PID,输入命令:netstat -aon|findstr "49157",回车,记下最后一位数字,如:2720 继续输入tasklist|findstr "2720",回车,查看是哪个进程或者程序