如何确定给定进程(linux)正在打开哪些TCP / UDP端口?

前端之家收集整理的这篇文章主要介绍了如何确定给定进程(linux)正在打开哪些TCP / UDP端口?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我知道如何使用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套接字列表.

原文链接:https://www.f2er.com/linux/396068.html

猜你在找的Linux相关文章