Linux下通过端口找到对应的程序

比如我们已知端口5600被占用,需要找到是哪个程序占用了,可以通过如下方式进行查找。
1. 先通过lsof命令找到打开该端口对应的程序的PID。

[yuanping@Linux C]$ lsof -i :5600
COMMAND  PID     USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
server  4643 yuanping    3u  IPv4 1286699      0t0  TCP *:esmmanager (LISTEN)

2. 通过PID找到对应的文件,这里的4643就是上面步骤中找到的程序的PID。

[yuanping@Linux C]$ ls -l /proc/4643/exe
lrwxrwxrwx. 1 yuanping yuanping 0 Jan  8 23:08 /proc/4643/exe -> /home/yuanping/Code/C/server
[yuanping@Linux C]$ 

或者可以通过如下一个语句完成,其中5600换成你的端口。

[yuanping@Linux C]$ ls -l /proc/`lsof -i :5600 | awk -F " " '{print $2}' | grep -v "PID" | sort | uniq`/exe
lrwxrwxrwx. 1 yuanping yuanping 0 Jan  8 23:08 /proc/4643/exe -> /home/yuanping/Code/C/server
[yuanping@Linux C]$ 

 Linux下通过端口找到对应的程序_第1张图片

转载于:https://www.cnblogs.com/yuanping/archive/2013/01/08/2852065.html

你可能感兴趣的:(Linux下通过端口找到对应的程序)