开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列"
经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用
假如我们需要确定谁占用了我们的80端口
1、Windows平台
在windows命令行窗口下执行:
C:\>netstat -aon|findstr "80"
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 2736
看到了吗,端口被进程号为2736的进程占用,继续执行下面命令:
C:\>tasklist|findstr "2736"
peer.exe 2016 Console 0 16,064 K
很清楚吧,thread占用了你的端口,Kill it
如果第二步查不到,那就开任务管理器,看哪个进程是2736,然后杀之即可。
peer.exe这东西是RaySource网盘下载软件里的进程,很讨厌
如果需要查看其他端口。把 80 改掉即可
以下文章主要以80端口号为例,如果想知道其他的端口号也可以使用该方法..........................
1、在windows下如何查看80端口占用情况?是被哪个进程占用?如何终止等.
这里主要是用到windows下的DOS工具,点击"开始"--"运行",输入"cmd"后点击确定按钮,进入DOS窗口,接下来分别运行以下命令:
>netstat -aon | findstr "80"
Proto Local Address Foreign Address State PID
==== ============ ============== ========== ======
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1688
可以看出80端口被进程号为1688的程序占用.
>tasklist | findstr "1688"
图像名 PID 会话名 会话# 内存使用
========================= ====== ================ ======== ============
inetinfo.exe 1688 Console 0 2,800 K
很明显,是inetinfo占用了80端口;inetinfo.exe主要用于支持微软Windows IIS网络服务的除错,这个程序对你系统的正常运行是非常重要的.
当然,并不是只有inetinfo.exe进程会占用80端口,这只是我机器上的情况.如果你并不了解此进程是干什么用的,千万不要盲目地将其kill掉,最好先百度或Google搜索一下;当然如果你很了解它,并确定可以终止,那么继续下面的命令.
>taskkill /pid 1688 /F
成功: 已终止 PID 为 1688 的进程。
如果你很熟悉此进程,并确定可以终止,那么就直接使用上面的命令把PID为1688的进程终止.(这一步同样可以在任务管理器中执行,inetinfo.exe就是任务管理器中的映像名称,选中它,点击"结束进程"即可)
>tasklist | findstr "1688"
再次确认是否成功终止,如果成功终止此次执行命令后应返回空.
2、linux下如何查看80端口占用情况?是被哪个进程占用?如何终止等
查询端口是否被占用,被哪个进程占用有两种方式:1、netstat -anl | grep "80" ;2、lsof -i:80
终止进程的方式:kill pid