Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何确定给定进程(linux)正在打开哪些TCP / UDP端口?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述@H_675_4@ 我知道如何使用lsof或netstat执行相反的操作(找出具有给定端口的进程),但是对Google的广泛研究并没有帮助我解决相反的问题. 我知道我可以使用“netstat -np”结合一些grep和sed,但它看起来很hacky.是否有“lsof -i tcp:80”的反转版本,它将显示给定进程打开的所有本地端口? 看一下手册页,您会发现可以使用-p选项指定进程ID,使用-i选项将显示限制为Int
我知道如何使用lsof或netstat执行相反的操作(找出具有给定端口的进程),但是对Google的广泛研究并没有帮助我解决相反的问题.

我知道我可以使用“netstat -np”结合一些grep和sed,但它看起来很hacky.是否有“lsof -i tcp:80”的反转版本,它将显示给定进程打开的所有本地端口?

解决方法

看一下手册页,您会发现可以使用-p选项指定进程ID,使用-i选项将显示限制为Internet域套接字(-i4仅用于ipv4和-i6用于IPv6的).所以,如果你将它们串在一起……
lsof -p <pid> -i

…你得到的不是你想要的,因为认情况下lsof会或你的请求一起.所以添加-a(和)标志……

lsof -p <pid> -a -i

…并且您将获得由指定进程ID打开的IPv4套接字列表.

大佬总结

以上是大佬教程为你收集整理的如何确定给定进程(linux)正在打开哪些TCP / UDP端口?全部内容,希望文章能够帮你解决如何确定给定进程(linux)正在打开哪些TCP / UDP端口?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。