经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用。
开始→运行→cmd 进入命令提示符,输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列" 。
假如我们需要确定谁占用了我们的8008端口,在windows命令行窗口下执行:
C:"Documents and Settings"小叶>netstat -aon|findstr 8008
TCP 0.0.0.0:8008 0.0.0.0:0 LISTENING 2596
看到了吗,端口被进程号为2596的进程占用,继续执行下面命令:
C:"Documents and Settings"小叶>tasklist|findstr "2596"
javaw.exe 2596 Console 0 33,036 K
看来javaw占用了你的端口。
详细出处参考:http://www.itqun.net/content-detail/2686.html
利用快捷键win+R键打开运行窗口。输入cmd回车打开命令提示符窗口
1:查看本机开放的端口,即已被占用的端口号。
命令:
netstat -an
部分结果列表:
Proto Local Address Foreign Address State
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING
TCP 0.0.0.0:3473 0.0.0.0:0 LISTENING
TCP 0.0.0.0:8009 0.0.0.0:0 LISTENING
Local Addresss 对应的这列,“:”后边即为以开放的端口号。
2:查看某个端口号是否被占用
比如要查看Mysql的默认服务端口3306是否已被占用
命令:
netstat -ano|findstr "3306"
----如果没有返回任何结果,即证明此端口没有被占用。
----如果返回结果为:
TCP 0.0.0.0:80800.0.0.0:0LISTENING1640
说明8080端口已经被占用。 1640即占用8080此端口号的进程号。
3:查看进程号对应的进程名称
任务管理器:
如果没有PID(进程ID)列,可以在任务管理器的菜单栏-查看-选择列中选中该列即可。
命令:
tasklist|findstr ”1640“
这是查看1640进程号所对应的进程名称。
返回结果为:
Tomcat5.exe1640Console 033,802 K
Tomcat5.exe 即是占用1640端口号的进程名。
4:结束进程
可以直接在任务管理器中结束,打开任务管理器快捷键:ctrl+shift+ESC
命令:
tskill 进程名/进程号
如:tskill Tomcat5.exe
tskill 1640