Linux下怎样通过进程ID获取端口号
发布网友
发布时间:2022-05-06 18:07
我来回答
共1个回答
热心网友
时间:2022-05-26 23:47
基本逻辑就是,
1)ls -l /proc/<pid>/fd
[~]$ ll /proc/12753/fd
lrwx------. 1 xxx xxx 64 3月 8 18:50 3 -> socket:[841683]
2)利用上述的socket-inode过滤/proc/net/tcp
[~]$ cat /proc/net/tcp | grep 841683
#sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
7: xxxxA8C0:8A92 xxxxA8C0:0016 01 00000000:00000000 02:000A6136 00000000 523 0 841683 2 ffff880034936a80 21 3 14 10 -1
3)得到源地址->目的地址(十六进制转十进制)
192.168.x.x:35474 -> 192.168.x.x:22