日常维护我们经常会遇到某个程序使用了哪些端口,某个端口被哪个程序占用,如何查看呢,下面介绍如下:
 对windows系统:通过windows任务管理器找到应用程序,右击“转到进程”,查看进程pid号(如无此列,请在“查看”-“选择列”中添加该列),然后在 cmd命令行下面输入netstat -an -o 然后找到对应的PID号 就能找到端口了。同理,某个端口被哪个程序占用,反查便可。注:有时netstat -na -o查出内容太多,不易找到pid,可通过重定向到txt文件(>pid.txt)查找。
 对linux系统:查看某程序使用端口,在控制台输入netstat -na -p |grep  pid/program name,便可;查看某端口被程序占用,在控制台输入lsof -i tcp:port或netstat -na -p |grep port便可。
 
当然,以上也可以通过cport或sv等端口查看工具查看。


查看端口使用情况,使用netstat命令。

查看已经连接的服务端口(ESTABLISHED

netstat -a

查看所有的服务端口(LISTEN,ESTABLISHED)

netstat -ap

查看8080端口,则可以结合grep命令:netstat -ap | grep 8080

如查看8888端口,则在终端中输入:lsof -i:8888


#netstat -antp | grep  服务名或端口号

如:

#netstat -antp | grep  httpd

#netstat -antp | grep  :80 


这个是最常用的组合:



-a        all,所有被监听的连接



-n        number,把能以数字表示的用数字表示



-t            tcp,tcp协议的



-p        programs,输出进程名



另外一个命令:

netstat -anp 或者ps -aux