有时候需要在Linux下查看一个进程占用了那个端口,但是只知道进程大致的名称,比如要查看hadoop的namenode在哪个端口上运行,以便在eclipse中连接。

首先用ps命令查看进程的id:
 

复制代码
代码如下:

$ ps -ef | grep Name

其中每一行(很长的时候会占用若干行)的第二个字段就是进程的id。
当然,对于在java虚拟机中运行的进程,比如hadoop的守护进程,可以直接用jsp命令查看:

复制代码
代码如下:

$ jps | grep Name

或者已经知道进程的确切名称,可以用pidof查看:

复制代码
代码如下:

$ pidof Name

查看到进程id之后,使用netstat命令查看其占用的端口:

复制代码
代码如下:

$ netstat -nap | grep pid