通过进程查找占用端口的服务,并结束进程的方法

Windows 系统

  • 使用任务管理器
    1. 按下 Ctrl + Shift + Esc 组合键打开任务管理器。
    2. 切换到 "详细信息" 选项卡。
    3. 右键单击任意列标题,在弹出的菜单中勾选 "PID(进程标识符)" 和 "命令行"。"PID" 有助于后续关联端口信息,"命令行" 能让你查看进程启动时使用的完整命令,辅助判断是哪个服务。
    4. 记住要查找的端口对应的 PID,在任务管理器中找到该 PID 对应的进程,进程名称能让你初步判断是哪个服务,命令行信息可以进一步辅助确认。
  • 使用命令行工具

1、打开命令提示符(CMD)或者 PowerShell,查找所有活动连接。

2、执行以下命令来查找占用指定端口的 PID:

复制代码
netstat -ano | findstr :<端口号>

例如,要查找占用 8080 端口的进程 ID,就输入 netstat -ano | findstr :8080

3、得到 PID 后,使用以下命令查看该 PID 对应的服务名称

复制代码
tasklist /fi "PID eq <PID>"

4、结束进程

通过任务管理器或者命令行结束对应的进程。使用命令行结束进程的话,在命令提示符中输入以下命令:

复制代码
taskkill /F /PID <进程 ID>

比如,若进程 ID 是 1234,就输入 taskkill /F /PID 1234

Linux 系统

  • 使用 lsof 命令

    1. 打开终端。
    2. 执行以下命令查找占用指定端口的进程信息:

    lsof -i :<端口号>

例如,查找占用 8080 端口的进程,输入 lsof -i :8080。该命令会输出进程的详细信息,包括进程名、PID、用户、文件描述符等,从进程名就能判断是哪个服务。

  • 使用 netstatps 命令组合

1、打开终端,执行以下命令查找占用指定端口的 PID:

复制代码
netstat -tulnp | grep :<端口号>

比如查找占用 8080 端口的进程 ID,输入 netstat -tulnp | grep :8080

2. 得到 PID 后,使用 ps 命令查看该 PID 对应的进程详细信息:

复制代码
ps -ef | grep <PID>

例如,若 PID 是 1234,就输入 ps -ef | grep 1234,输出结果里会显示进程的启动用户、启动时间、命令行等信息,以此判断是哪个服务。

macOS 系统

macOS 基于 Unix 系统,查找方法和 Linux 类似:

  • 使用 lsof 命令

    1. 打开终端。
    2. 执行以下命令查找占用指定端口的进程信息:

    lsof -i :<端口号>

例如,查找占用 8080 端口的进程,输入 lsof -i :8080。通过输出的进程名判断是哪个服务。

相关推荐
明洞日记3 分钟前
【软考每日一练007】位图计算与内存管理深度全解
c++·算法·ai·操作系统·进程
定偶19 小时前
Linux进程管理和进程间通信机制
c语言·进程·共享内存·管道·信号量·消息列队
仰泳之鹅1 天前
【PID学习】多环PID
学习·pid
c++逐梦人1 天前
命令⾏参数和环境变量
linux·操作系统·进程
明洞日记2 天前
【软考每日一练002】进程调度机制详解
c++·ai·操作系统·进程
晚风吹长发2 天前
初步理解Linux中的进程间通信以及管道通信
linux·运维·服务器·c++·进程·通信
代码AC不AC3 天前
【Linux】进程优先级和进程切换
linux·进程·进程优先级·进程切换调度算法
无小道4 天前
OS中的线程
linux·线程·进程·os·线程库·用户级线程库·线程使用
柏木乃一4 天前
基础IO(中)
linux·服务器·c++·io·进程·系统编程·缓冲区
切糕师学AI12 天前
win下,当.NET控制台进程被强制终止(如关闭控制台、任务管理器结束进程等)时,如何优雅地清理数据
.net·控制台·进程