You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux下如何获取Nginx运行的精确端口号(仅输出端口数值)

解决方法

这里有几种简洁的方式可以只提取端口号8060:

方法1:在原命令后追加列截取

直接在你现有命令的末尾加上cut -d " " -f1,利用空格分隔取第一列:

netstat -antup | grep nginx | awk '{print $4 "\t" $5 }' | cut -d ":" -f2 | cut -d " " -f1

方法2:用awk一步完成(更高效)

跳过多次管道,直接用awk拆分包含端口的字段:

netstat -antup | grep nginx | awk '{split($4, port_arr, ":"); print port_arr[2]}'

原理:split($4, port_arr, ":")会把$4(比如0.0.0.0:8060)按冒号拆分存入数组port_arr,port_arr[2]就是我们要的端口号。

或者用更简洁的awk写法,指定分隔符为冒号后取对应部分:

netstat -antup | grep nginx | awk -F ':' '{print $2}' | awk '{print $1}'

方法3:用sed正则匹配提取

利用正则直接匹配并提取端口数字:

netstat -antup | grep nginx | sed -E 's/.*:([0-9]+).*/\1/'

原理:正则.*:([0-9]+).*会定位冒号后的连续数字,\1引用这个匹配到的数字段,直接输出结果。

内容的提问来源于stack exchange,提问作者anand8398

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 07:50:34