本文摘写自:

百度经验

https://www.cnblogs.com/ieayoio/p/5757198.html

一、windows:开始---->运行---->cmd,或者是window+R组合键,调出命令窗口

1、输入命令:netstat -ano,列出所有端口的情况。在列表中我们观察被占用的端口,比如是49157,首先找到它。

2、查看被占用端口对应的PID,输入命令:netstat -aon|findstr "49157",回车,记下最后一位数字,即PID,这里是2720。

3、继续输入tasklist|findstr "2720",回车,查看是哪个进程或者程序占用了2720端口,结果是:svchost.exe

4、或者是我们打开任务管理器,切换到进程选项卡,在PID一列查看2720对应的进程是谁,如果看不到PID这一列,如下图:

5、则我们点击查看--->选择列,将PID(进程标示符)前面的勾打上,点击确定。

6、这样我们就看到了PID这一列标识,看一下2720对应的进程是谁,如果没有,我们把下面的显示所有用户的进程前面的勾打上,就可以看到了,映像名称是svchost.exe,描述是,Windows的主进程,与上面命令查看的完全一致。

7、结束该进程:在任务管理器中选中该进程点击”结束进程“按钮,或者是在cmd的命令窗口中输入:taskkill /f /t /im Tencentdl.exe。

二、linux:查看端口占用情况

在使用Linux系统的过程中,有时候会遇到端口被占用而导致服务无法启动的情况。比如HTTP使用80端口,但当启动Apache时,却发现此端口正在使用。

这种情况大多数是由于软件冲突、或者默认端口设置不正确导致的,此时需要查看究竟哪个进程占用了端口,来决定进一步的处理方法。

1、查看端口占用情况的命令:lsof -i

这里返回了Linux当前所有打开端口的占用情况。第一段是进程,最后一列是侦听的协议、侦听的IP与端口号、状态。如果端口号是已知的常用服务(如80、21等),则会直接显示协议名称,如http、ftp、ssh等。

2、查看某一端口的占用情况: lsof -i:端口号

这里显示出21号端口正在被pure-ftpd使用,状态是listen。

3、结束占用端口的进程:killall 进程名

虽然我们不建议用这种本末倒置的方法来解决冲突问题,但某些情况下还是可以直接结束掉占用进程的(比如重启Apache时进程没有完全退出,导致重启失败)

这样,所有的pure-ftpd进程都会被结束掉。

4、也可使用命令:netstat -apn|grep <端口号>

例如:

更多相关文章

  1. linux内核模块的强制删除-结束rmmod这类disk sleep进程
  2. linux进程和线程排查 · 记一次JVM CPU高负载的排查办法
  3. linux 中 开放端口,以及防火墙的相关命令
  4. Linux内存占用分析 进程内存空间
  5. linux下如何杀掉D状态进程
  6. linux c (4) 进程终止-exit和_exit函数
  7. Linux进程通信[2]-互斥锁和条件变量
  8. linux 创建子进程
  9. linux c 多进程socket程序,如何实现父进程监听,子进程接受连接(注

随机推荐

  1. 7个开放式的 HTML 面试题及回答策略 [每
  2. 尝鲜 ES2019 的新功能 [每日前端夜话0x38
  3. 表弟的数学题,我竟然用了python才解出来
  4. 7 个开放式 CSS 面试题及回答策略 [每日
  5. 在北京看场雪为什么这么难?
  6. 用python对2019年二手房价格进行数据分析
  7. 基于 Babel 的 npm 包的最小化设置 [每日
  8. 一文学懂 TypeScript 的类型 [每日前端夜
  9. 通过 Web 控制蓝牙设备:WebBluetooth入门
  10. 7个 Javascript 面试题及回答策略 [每日