Windows和Linux下如何查看端口被哪个进程占用

Windows:

C:/Users/ewanbao>netstat -aon|findstr "123"
  TCP    127.0.0.1:55123        0.0.0.0:0                 LISTENING         5092
  TCP    127.0.0.1:55123        127.0.0.1:55124        ESTABLISHED     5092
  TCP    127.0.0.1:55124        127.0.0.1:55123        ESTABLISHED     5092
  UDP    0.0.0.0:123               *:*                                               1416
  UDP    [::]:123                    *:*                                               1416

[注]:执行netstat -aon|findstr "123"以后,就可以看到5092进程中TCP打开123端口,1416进程打开UDP123端口

 

C:/Users/ewanbao>tasklist|findstr "1416"
svchost.exe                   1416 Services                   0     13,540 K

[注]:执行tasklist|findstr "1416"后就可以看到是svchost.exe在UDP打开123端口

 

Linux:

cba001:~ # lsof -i:5300
COMMAND   PID USER   FD   TYPE   DEVICE SIZE NODE NAME
named   26751 root   20u  IPv4 64750499       TCP localhost:hacl-hb (LISTEN)
named   26751 root   21u  IPv4 64750501       TCP cba001.eapac:hacl-hb (LISTEN)
named   26751 root   22u  IPv4 64750503       TCP 192.168.0.10:hacl-hb (LISTEN)
named   26751 root  512u  IPv4 64750498       UDP localhost:hacl-hb
named   26751 root  513u  IPv4 64750500       UDP cba001.eapac:hacl-hb
named   26751 root  514u  IPv4 64750502       UDP 192.168.0.10:hacl-hb

[注]:执行lsof -i:5300以后就可以看到26751进程在TCP和UDP上都打开了5300端口.

 

cba001:~ # ps -ef|grep 26751
root     10118 26915  0 12:59 pts/8    00:00:00 grep 26751
root     26751     1  0 Jul06 ?        00:02:06 /opt/ipworks/IPWdns/usr/bin/named

[注]:执行ps -ef|grep 26751以后就可以看到是named进程打开了5300端口

### 回答1: 在Linux中,可以使用以下命令来查看端口号被哪个进程占用: 1. 使用`netstat`命令: ```shell netstat -tuln | grep 端口号 ``` 其中,`-t`表示显示TCP连接,`-u`表示显示UDP连接,`-l`表示仅显示监听状态的连接,`-n`表示以数字形式显示端口号。 这个命令会列出所有占用端口号的进程,并显示进程的详细信息。 2. 使用`lsof`命令: ```shell lsof -i :端口号 ``` 这个命令会显示在指定端口号上活动的进程和相关的详细信息。 注意:要使用该命令,需要先安装`lsof`工具,可以使用以下命令进行安装: ```shell sudo apt-get install lsof ``` 若提示找不到该命令,则可以通过包管理工具安装,如`yum`。 通过上述命令,你就可以方便地查看特定端口号被哪个进程占用了。 ### 回答2: 在Linux中,我们可以使用一些命令来查看端口号被哪个进程占用。 1. 使用lsof命令:lsof命令可以显示系统中打开的文件和进程信息。通过加上"-i"参数,可以只显示网络相关的连接信息。例如,要查看端口号为8080的进程占用情况,可以使用以下命令: ``` lsof -i :8080 ``` 这将会显示占用端口号8080的进程和相关的信息,如进程ID(PID)、进程名等。 2. 使用netstat命令:netstat命令用于显示网络连接、路由表、网络接口等信息。通过加上"-tuln"参数,可以只显示TCP和UDP相关的连接信息,并且以数字形式显示端口号。例如,要查看端口号为8080的进程占用情况,可以使用以下命令: ``` netstat -tuln | grep 8080 ``` 这将会显示占用端口号8080的进程和相关的信息,如协议、本地地址、远程地址等。 以上是两种常用的方法来查看端口号被哪个进程占用。在实际使用中,我们可以根据需要选择适合的方法来查看特定端口号的占用情况。 ### 回答3: 在Linux系统中,可以使用以下命令查看端口号被哪个进程占用。 1. 使用netstat命令: ``` netstat -tlnp | grep 端口号 ``` 其中,-tlnp选项表示显示TCP连接的监听状态,-l选项表示只显示监听端口,-n选项表示显示端口号而非服务名,-p选项表示显示进程ID和进程名。使用管道符(|)将netstat命令的输出传递给grep命令,并指定要查找的端口号。 2. 使用lsof命令: ``` lsof -i :端口号 ``` 其中,-i选项表示显示打开网络连接,:端口号表示要查找的端口号。 以上命令执行后,会返回占用端口号的进程的相关信息,包括进程ID和进程名。通过查看进程名,可以确定具体是哪个程序占用了该端口号。 另外,如果遇到权限问题,可以在命令前添加sudo以提升权限,例如: ``` sudo netstat -tlnp | grep 端口号 sudo lsof -i :端口号 ``` 这样可以解决权限不足的问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值