不使用 grep 来过滤 ss 进程输出

不使用 grep 来过滤 ss 进程输出

ss -p可以提供与连接关联的进程名称、进程 ID (PID) 和文件描述符。

例子:ss -tuanp

[...]
tcp   ESTAB   0   0   x.x.x.x:59594   x.x.x.x:993   users:(("thunderbird",pid=1985,fd=98)) 
[...]

虽然的过滤选项ss似乎相当先进,但我还没有找到一种方法来过滤users基于 JSON 的数据结构,以便只获取进程名称。你知道不使用 grep/awk/sed/whatever 是否可以做到这一点吗?

高级文档ss意义不大,而且 ss 的作者 Alexey Kuznetosv 在互联网上很少出现。我问这个问题是为了避免阅读ss源代码。

答案1

我查看了 的源代码ss,发现ss不支持按进程名称进行过滤。它在运行时解析/proc树以显示进程名称。因此,没有办法避免使用 等传统工具grep

相关内容