linux 查看端口状态

netstat  -tunlp | grep 端口号

1、netstat -tunlp 是查看所有的在使用的端口号情况

2、netstat -tunlp | grep 端口号 是查看所查询的端口号情况

3、netstat -tunlp 各个参数说明如下:

-t:(tcp)仅显示TCP相关端口

-u:(udp)仅显示UDP相关端口

-n:不进行DNS轮询,显示IP(可以加速操作)

-l:仅列出有在Listen(监听)的服务端口

-p:显示建立相关链接的程序名

 

### 查看 Linux 系统中端口状态的方法或命令 在 Linux 系统中,可以使用多种命令来查看端口状态。以下是常用的几种方法和相关命令: #### 1. 使用 `netstat` 命令 `netstat` 是一个传统的网络统计工具,用于显示网络连接、路由表、接口统计等信息。以下是一些常用命令示例: - 查看当前所有 TCP 端口的监听状态: ```bash netstat -ntlp ``` 这个命令会列出所有正在监听的 TCP 端口及其对应的进程 ID[^1]。 - 查看指定端口(如 8080)的使用情况: ```bash netstat -tunlp | grep '8080' ``` 或者同时检查多个端口: ```bash netstat -tunlp | egrep '(2181|8080)' ``` - 查看处于连接状态的系统资源信息: ```bash netstat -atunp ``` 需要注意的是,`netstat` 可能需要 root 权限才能获取完整信息。如果系统未安装 `net-tools` 包,则可以通过以下命令安装: ```bash yum -y install net-tools ``` #### 2. 使用 `lsof` 命令 `lsof` 是一个功能强大的工具,可以列出打开的文件、网络连接等信息。以下是相关用法: - 查看特定端口(如 8080)的占用情况: ```bash lsof -i:8080 ``` - 如果需要安装 `lsof`,可以使用以下命令: ```bash yum -y install lsof ``` #### 3. 使用 `ss` 命令 `ss` 是 `netstat` 的替代工具,性能更优且功能更强大。以下是常用命令: - 查看所有监听的 TCP 和 UDP 端口: ```bash ss -tuln ``` - 查看特定端口(如 5000)的使用情况: ```bash ss -tnlp | grep ':5000' ``` 对于较新的 Linux 系统,推荐优先使用 `ss` 替代 `netstat`[^3]。 #### 4. 结合 `ps` 和 `netstat` 如果需要根据进程查找其占用的端口号,可以结合 `ps` 和 `netstat`: - 首先查找进程的 PID: ```bash ps -ef | grep xxx ``` 其中 `xxx` 是目标进程的关键字。 - 然后根据 PID 查找对应的端口号: ```bash netstat -anp | grep <PID> ``` ### 示例代码 以下是一个完整的脚本示例,用于查找特定端口(如 8080)的占用情况: ```bash #!/bin/bash PORT=8080 echo "Checking port $PORT usage..." if command -v netstat &> /dev/null; then echo "Using netstat..." netstat -tunlp | grep ":$PORT" else echo "netstat not found, using ss..." ss -tnlp | grep ":$PORT" fi ``` ### 注意事项 - 在某些情况下,可能需要以 root 用户权限运行上述命令,以确保获取完整的端口信息。 - 对于较新的 Linux 发行版,建议优先使用 `ss` 替代 `netstat`,因为后者可能已被弃用。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值