.

.

.

.

.

我们经常使用的网络程序偶尔会遇到端口被占用的情况,但是却苦于无法找到占用端口的程序,这篇文章将教你两个命令,轻松排查端口占用问题。

关键命令:

1.查询端口占用:netstat -ano | findstr "7001"

2.查询占用端口的进程:tasklist /fi "pid eq 2072"

3.[赠送]干掉占用的进程:taskkill /im avp.exe /f

下面开始进入正题,扯一扯事件的始末。急于解决问题的朋友就不必往下看了,上面三条命令足矣解决燃眉之急。

有一天早晨,用小学生写作文的话说就是风和日丽晴空万里,我来到办公室启动各种开发环境准备开始苦逼的一天。

Weblogic 启动到80%左右就一直停在那里,控制台最后一行已经输出了:

<2013-11-13 上午10时26分53秒 CST> <Notice> <WebLogicServer> <BEA-000360> <Server started in RUNNING mode>

正常来说即使 Eclipse Progress 进度条显示不到100%也可以使用浏览器访问了,可是谁知用浏览器一访问,返回:

Internet Explorer cannot display the webpage

隐隐的有种不详的预感,但是也没做太多的怀疑,毕竟进度条还没走完。

等啊等,等啊等。。。启动进度一直停留在百分之80几,等了10分钟,Eclipse 终于报了一个错误,似乎是说Weblogic启动超时。

再启动还是同样的问题。。

排查了半天,想了各种办法,依然找不出原因来。

无奈只好仔细看控制台上输出的日志,忽然一行log赫然映入眼帘:

<2013-11-13 上午10时26分53秒 CST> <Error> <Server> <BEA-002606> <Unable to create a server socket for listening on channel "Default[6]". The address 127.0.0.1 might be incorrect or another process is using port 7001: java.net.BindException: Address already in use: JVM_Bind.>

哈哈,踏破铁鞋无觅处,原来错误消息就在眼前。。很明显它说7001端口被占用了。

于是就该拿出上面的命令来解决问题了!

赶紧启动CMD:

C:\Users\yuhuashi>netstat -ano | findstr "7001"
TCP 127.0.0.1:7001 127.0.0.1:7001 ESTABLISHED 2072

7001端口被PID为2072的进程给占用了,赶紧看看2072是何方神圣:

C:\Users\yuhuashi>tasklist /fi "pid eq 2072"

Image Name PID Session Name Session# Mem Usage
========================= ======== ================ =========== ============
avp.exe 2072 Services 0 93,628 K

哈,被我抓到了。。是avp.exe,即卡巴斯基。

呃,排查到此就结束了,元凶也被抓到了,只是要不要对它 kill 呢?那就要看各位看官的实际情况适当解决了。

不过这里说一下这个附赠的 taskkill 命令。

这个命令可以将某个进程结束掉,这里我用我那个启动失败的 Weblogic 给大家做个示范:

C:\Users\yuhuashi>taskkill /im java.exe /f
SUCCESS: The process "java.exe" with PID 4772 has been terminated.

成功结束了 java.exe 进程。

im 参数表示要结束的进程名称,当然也可以使用 pid,改成 /pid 参数即可。

如果你输入了一个不存在的进程名称或者PID,那么执行结果如下:

C:\Users\yuhuashi>taskkill /im java.exe /f
ERROR: The process "java.exe" not found.

【windows】查询占用端口的程序——记一次解决webloigc启动失败的过程的更多相关文章

  1. windows查询占用端口

    https://jingyan.baidu.com/article/3c48dd34491d47e10be358b8.html 1)端口号 - 查进程 netstat -aon|findstr &qu ...

  2. 【Windows】命令行查询占用端口信息

    Windows上查询443端口被占用的信息: NETSTAT.EXE -nao | findstr "443" 查询结果 杀掉进程: tskill 2888

  3. Windows下查看端口被程序占用的方法

      有时安装程序时,会出现XX端口被占用的情况,可以通过CMD命令查看什么程序占用 1. netstat -ano 查看相应端口对应程序的PID 例如:   C:\>netstat -ano A ...

  4. linux与windows查看占用端口的进程ID并杀死进程

    有时候tomcat出现端口被占用,需要查出进程ID并杀死进程. 1.查找占用端口的进程ID(windows与linux一样  8005也可以加上引号   grep可以用findstr替换) 6904就 ...

  5. Linux及Windows查看占用端口的进程

    想必大家在部署环境启动服务的时候,会遇到服务起不起来的问题,看日志,说是端口被占用了. 有的时候,我们不想改端口,那么,就需要去查看到底是哪个应用把这个端口给占用了,然后干掉它即可. 下面分别列举li ...

  6. windows 查询文件被什么程序占用

    运行Resmon CPU选项卡全选 在[关联的句柄]里查询: 需要的时间挺多的...

  7. Windows查看占用端口的进程及其对应的应用程序并关闭之

    ^_^ C:\Users\dsp> C:\Users\dsp>netstat -ano | findstr " TCP LISTENING TCP TIME_WAIT TCP T ...

  8. windows查看占用端口的进程

    1方法 先找到进程号: netstat -aon|findstr 再根据进程号得到进程: tasklist |findstr " 2结果

  9. Linux 结束占用端口的程序

    [root@ucit ~]# lsof -i:80COMMAND    PID USER   FD   TYPE DEVICE SIZE NODE NAMEjava      1839 root   ...

随机推荐

  1. C# 两个时间相减 返回 对应天时分秒

    "; //string sdsdsdsds = "1"; , '); //不足2位 就补充0 足2位 就不变 DateTime dts1 = DateTime.Now; ...

  2. Tensorflow运行程序报错 FailedPreconditionError

    1 FailedPreconditionError错误现象 在运行tensorflow时出现报错,报错语句如下: FailedPreconditionError (see above for trac ...

  3. 字符集不同导致的ORA-00972

    使用ssh登录RAC的两个节点,分别执行相同的sql语句,发现其中一个报错ora-00972: 检查后发现,左侧节点的客户端使用的字符集是SecureCRT的默认字符集,右侧使用的是UTF-8

  4. angularjs框架及其生态环境 --待续

    angular的MVVM框架结构:     1. app,   2.routes, config,   3.module,   4.Controller, $scope,controller参数,事件 ...

  5. Git实战(二)原理

    上次的博文Git实战(一)版本号控制概述中我们简介了一下版本号控制系统的概念,重点对版本号控制的三种类型进行了分析和对照,从本篇博文開始我们进入Git的世界,首先介绍一下Git实现版本号控制的原理. ...

  6. 神经网络写诗(charRNN)

    https://github.com/chenyuntc/pytorch-book 基于pytorch ,许多有趣的小应用.感谢作者! 作者的代码写得非常清晰,配置方法也很明确,只需要按照提示,安装依 ...

  7. js 万恶之源 是否滚动到底部?

    let scrollHandle = (el) => { // 如果已经滚到底部了 if (el.scrollHeight - el.scrollTop === el.clientHeight) ...

  8. 在ubuntu14系统中将redis-server设置为开机启动项

    1.redis安装完成后(我装的是redis-3.0.7),修改配置文件redis.conf,修改的项目如下 注意:以下内容都是在root用户下进行操作的 gedit redis.conf打开文件进行 ...

  9. hadoop集群搭建实践

    一.Linux配置1.设置hosts的ip(集群机器做同样操作)vi /etc/hosts192.168.91.129 master192.168.91.130 slave #互相ping通即可 pi ...

  10. 【转】在 XAML 的属性中,转义大括号 {}

    我们知道大括号"{}"在XAML中是用来处理标记扩展的. 比如: <Button Content="{Binding}"/>   但如何转义而表示普 ...