linux之查看端口占用

第一章 linux之帮助命令
第二章 linux命令行快捷键
第三章 linux之防火墙
第四章 linux之服务开机自启
第五章 linux之关机与重启
第六章 linux之环境变量
第七章 linux之目录操作命令
第八章 linux之目录结构
第九章 linux之使用ssh连接被拒
第十章 linux之搜索命令
第十一章 linux之统计命令
第十二章 linux之网络命令
第十三章 linux之文件操作命令
第十四章 linux之文件系统命令
第十五章 linux之压缩解压缩
第十六章 linux之用户管理
第十七章 linux之权限管理命令
第十八章 linux之scp命令文件传输
第十九章 linux之vim编辑器
第二十章 linux之linux下载软件包
第二十一章 linux之定时任务
第二十二章 linux之查看端口占用



查看端口占用

使用lsof

可以使用lsof -i:端口号 来查看端口占用情况

lsof -i:8010
COMMAND   PID    USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
nginx   35653 zhanghe   10u  IPv4 0xcac2e413ddf9c5b9      0t0  TCP *:8010 (LISTEN)
nginx   35654 zhanghe   10u  IPv4 0xcac2e413ddf9c5b9      0t0  TCP *:8010 (LISTEN)
nginx   35655 zhanghe   10u  IPv4 0xcac2e413ddf9c5b9      0t0  TCP *:8010 (LISTEN)
nginx   35656 zhanghe   10u  IPv4 0xcac2e413ddf9c5b9      0t0  TCP *:8010 (LISTEN)
nginx   55650 zhanghe   10u  IPv4 0xcac2e413ddf9c5b9      0t0  TCP *:8010 (LISTEN)

使用netstat

可以使用netstat -tunlp | grep 端口号 来查看指定的端口号的进程情况

 netstat -tunlp | grep 8096
tcp6       0      0 :::8096                 :::*                    LISTEN      22027/java 
-t 显示tcp协议连接状况
-u 显示udp协议连接状况
-n 使用ip和端口号显示,不使用域名
-l 仅列出在Listen(监听)服务状态的连接
-p 显示PID和程序名

参考文献

### Linux 查看端口占用命令 在 Linux 系统中,`netstat` 和 `lsof` 是两个常用的工具来查看端口占用情况。以下是它们的具体用法: #### 使用 `netstat` 查看端口占用 可以通过以下几种方式使用 `netstat` 来查询端口的相关信息。 - **查看当前所有 TCP 端口** 执行以下命令可以显示所有的监听中的 TCP 端口及其对应的程序名称。 ```bash netstat -ntlp ``` 这里的选项含义如下: - `-n`: 不解析主机名和服务名; - `-t`: 显示 TCP 协议的信息; - `-l`: 只显示正在监听的套接字; - `-p`: 显示与每个连接关联的进程 ID (PID) 和程序名称[^1]。 - **查看特定端口占用情况** 如果只想查找某个具体端口(例如 8080),可以结合 `grep` 或者正则表达式过滤结果。 ```bash netstat -tunlp | grep '8080' ``` 对于多个端口的情况,则可使用 `egrep` 的多条件匹配功能。 ```bash netstat -tunlp | egrep '(2181|8080)' ``` - **查看处于活动状态下的系统资源信息** 若要了解目前有哪些网络连接以及其详细的状态数据包统计等资料时可用此方法获取更全面的数据集。 ```bash netstat -atunp ``` 如果尚未安装 `net-tools` 软件包而无法运行上述指令的话, 需要先通过 YUM 安装它. ```bash yum -y install net-tools ``` #### 使用 `lsof` 查找端口被哪个进程所占 另一种有效的方法就是利用文件描述符管理器——即所谓的 open files manager ——也就是我们所说的 lsof 工具. - **基本语法结构** 查询某指定端口号是否已被打开并由哪一个应用程序控制着呢? ```bash lsof -i:<port_number> ``` 如需定位到第8080号位子上是否有服务实例存在就输入下面这条语句即可完成操作啦~ ```bash lsof -i:8080 ``` 同样地,在初次尝试之前可能还需要确认一下本机环境里有没有预置好这个实用的小玩意儿哦~如果没有的话也不要着急哈,只需要简单执行一句命令就能搞定咯! ```bash yum -y install lsof ``` 另外还有一种场景比较特殊一点的就是当已知目标进程的名字或者是部分关键字的时候怎么快速找到它的实际工作位置?这时候就可以借助 ps 加 filter 技巧再加上刚才提到过的 netstat 功能模块一起来实现目的了哟! 比如假设我们现在想知道名为 myapp 的那个家伙到底绑定了哪些外部接口地址吧? 那么我们可以按照这样的顺序来进行排查分析过程: 第一步当然是找出符合条件的目标对象列表喽, 第二步再把得到的结果进一步传递给下一个环节做深入挖掘处理就可以了😊 ```bash ps -ef | grep myapp # 获取 PID 后继续下一步... netstat -anp | grep <PID> ``` 以上就是在 Linux 平台上针对不同需求所提供的几类解决方案介绍完毕啦~希望对你有所帮助😄
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拾光师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值