📌  相关文章
📜  windows 杀死端口上的进程 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:35:42.453000             🧑  作者: Mango

Windows 杀死端口上的进程 - Shell-Bash

在 Windows 操作系统上,有时需要关闭某个端口所占用的进程,可能是因为还有其他进程需要占用该端口,或者因为该端口上的进程正在消耗过多的系统资源,或者该进程正在运行某些危险的操作。

本文将介绍如何使用 Shell-Bash 命令来关闭端口上的进程。

前置条件

在执行本教程中的命令之前,请确保您已安装了 Bash。您可以在命令提示符中输入 bash 来检查 Bash 是否已安装。如果 Bash 安装成功,则会显示 Bash 命令提示符:$

步骤 1 - 找出要关闭的端口

要关闭端口上的进程,首先需要找出该端口的 PID。使用以下命令列出当前所有正在运行的进程及其 PID:

$ tasklist

该命令将显示所有正在运行的进程及其 PID、内存使用情况和其它信息。

找出要关闭的进程的 PID ,使其保留在一个变量中,以后使用。

$ PORT_PID=$(netstat -ano | findstr :<port_number> | awk '{print $5}' | sed 's/:/ /' | awk '{print $2}')

该命令使用 netstat 命令列出所有活动端口和其相关的进程。然后使用 awksed 命令从输出中提取 PID。最后,将该 PID 存储到 PORT_PID 变量中。在此命令中,将 "<port_number>" 替换为要关闭的端口号。

步骤 2 - 关闭进程

在将要关闭的进程的 PID 存储在变量中后,可以使用 taskkill 命令结束该进程。以下命令将使用存储在 PORT_PID 变量中的 PID 来结束进程。

$ taskkill /PID $PORT_PID /F

该命令使用 /PID 选项指定要结束的进程的 PID,并使用 /F 选项强制结束该进程。在此命令中,使用 $PORT_PID 变量来代替将要关闭的进程的 PID。

到此,已经成功关闭了指定端口的进程。可以再次运行 netstat 命令来验证该端口现在是否已被释放。

$ netstat -ano | findstr :<port_number>

在此命令中,将 "<port_number>" 替换为要关闭的端口号。如果该端口未被占用,那么该命令将不会产生任何输出。

结论

Shell-Bash 命令是 Windows 操作系统上管理进程和端口的有用工具。执行上述命令可以方便地关闭某个端口所占用的进程,以便进行其他操作或释放系统资源。