📜  从 mac 上的终端杀死端口 - Shell-Bash (1)

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

从 Mac 上的终端杀死端口 - Shell-Bash

在进行开发过程中,我们可能会启动许多应用程序,这些程序会占用不同的端口。而有时候,我们需要先关闭这些程序,才能启动新的程序或调试代码。在这种情况下,我们需要了解如何通过终端杀死端口。

为什么需要杀死端口?

在 Mac 上,每个程序都需要一个唯一的端口号以便防止和其他程序发生冲突。但有时候,我们可能会遇到这样的情况,一个程序占用了一个我们需要的端口。为了解决这个问题,我们需要关闭或者杀死这个程序,以便我们自己的程序可以使用该端口。

如何找到占用端口的进程?

在终端窗口中,我们可以通过运行以下命令来查找占用指定端口的进程:

lsof -i:[PORT NUMBER]

其中 [PORT NUMBER] 是你需要杀死的端口号。

该命令会列出所有占用该端口的进程及其 PID。例如,如果一个进程占用了端口 3000,则需要运行以下命令:

lsof -i:3000

这将返回一个进程列表,如下所示:

image

如何杀死占用端口的进程?

在终端窗口中,我们可以通过运行以下命令来杀死指定 PID 的进程:

kill [PID]

其中 [PID] 是你需要杀死的进程号。

例如,如果一个进程的 PID 为 1234,则需要运行以下命令:

kill 1234

这将立即杀死该进程。

如何一步到位?

有时候,我们不仅仅想要查找并杀死占用指定端口的所有进程,还希望一步完成该过程。在这种情况下,我们可以使用以下命令:

lsof -ti:[PORT NUMBER] | xargs kill

其中 [PORT NUMBER] 是你需要杀死的端口号。

该命令将先使用 lsof 命令列出占用该端口的所有进程的 PID,并使用 xargs 命令将它们传递给 kill 命令。

这个命令看起来很长,但它使整个过程变得容易而简单,你只需要在终端中输入一行命令即可杀死占用指定端口的所有进程。

结论

在开发过程中,我们经常需要杀死占用端口的进程,以便我们的程序可以使用它。在本文中,我们介绍了如何使用终端来查找并杀死占用指定端口的进程,让我们快速而有效地完成这个重要的任务。