c++ - 我如何获得与打开它们的应用程序关联的端口?

标签 c++ linux

我需要获取计算机上所有已打开端口的列表以及打开它们的应用程序。 我需要以编程方式获取此信息。

谢谢。

最佳答案

您必须执行以下操作:

  1. 套接字= ls -l /proc/<pid>/fd | grep socket | sed 's/.*socket:\[//' | sed 's/\]//'

  2. grep $socket/proc/net/tcp

  3. 解析前面命令的输出(第二个条目包含端口信息)

关于c++ - 我如何获得与打开它们的应用程序关联的端口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3306138/

相关文章:

linux - 处理器和虚拟/物理地址

linux - lxcbr0 究竟是什么?

linux - 为什么在 Grepping 文件 (.gz) 时,字数统计(即 -wc)中有很多零

linux - 构建 rpm,覆盖 _topdir,但获取 BuildRequires deps?

c++ - 指针容器

c++ - 如何运行示例 Armadillo 程序

android - 使用 FFmpeg 编码时处理原始数据的正确方法

linux - ldd -v 中的版本信息是什么意思?

c++ - 为什么比较无符号表达式 < 0 总是假的

c++ - 推力:reduce_by_key 将 zip_iterator(tuple) 传递给自定义仿函数以按键检索平均值