在Linux系统使用过程中,可以利用好netstat/lsof/ps等命令在端口、PID号、进程名、用户之间进行互相查询。
命令介绍
lsof 命令
lsof命令用于查看你进程开打的文件,打开文件的进程,进程打开的端口(TCP、UDP)。找回/恢复删除的文件。是十分方便的系统监视工具,因为lsof命令需要访问核心内存和各种文件,所以需要root用户执行。
了解更多lsof命令用法请查看:Linux命令文档 - lsof命令
ps 命令
ps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。kill 命令用于终止进程的方法如下:
kill -9 [PID]
ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。
了解更多ps命令用法请查看:Linux命令文档 - ps命令
netstat 命令
netstat命令用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。
了解更多netstat命令用法请查看:Linux命令文档 - netstat命令
使用方法
通过端口查询PID
如何查看特定端口的占用情况
lsof -i:[Port]
根据用户查看进程和端口
lsof -i|grep [user]
查询结果等同于
lsof -i | grep [PID]
通过进程名查询PID
有时候一些常用的进程我们都很熟悉,那么此时我们就可以用ps命令来查询目标的PID号了。
ps -ef | grep [进程名]
前提是你要知道进程名,比如若是一些系统后台进程则不能查看到。
通过PID查询端口号
若你在知道进程PID的情况下,如何查看该PID的进程情况呢?
netstat -nap | grep [PID]
查询该目标端口的开放情况!当然前提是你要知道该PID号