📌  相关文章
📜  停止在端口 ubuntu 上运行的进程 - Shell-Bash (1)

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

停止在端口 ubuntu 上运行的进程 - Shell-Bash
简介

本文将介绍如何使用 Shell 和 Bash 命令来停止在 Ubuntu 系统上运行的进程。其中,主要介绍了如何根据端口号查找进程并停止它们,以及如何通过进程名或进程 ID 来停止进程。

停止指定端口的进程

首先,我们需要获取正在监听的所有端口以及它们对应的进程 ID。可以使用以下命令:

sudo lsof -iTCP -sTCP:LISTEN -P

该命令会输出所有正在监听 TCP 连接的进程信息,包括进程 ID、端口号、进程名、用户等信息。其中 '-iTCP' 选项指定只查找 TCP 连接,'-sTCP:LISTEN' 选项指定只查找处于监听状态的连接,'-P' 选项指定不对端口号进行解析。

可以使用 grep 命令来过滤出指定端口的进程信息,例如要停止端口为 8080 的进程,可以使用以下命令:

sudo lsof -iTCP -sTCP:LISTEN -P | grep ':8080'

该命令会输出所有监听端口为 8080 的进程信息,包括进程 ID、端口号、进程名、用户等信息。接下来,我们需要使用 kill 命令停止对应的进程,例如进程 ID 为 1234,可以使用以下命令:

sudo kill 1234

该命令将向进程 ID 为 1234 的进程发送 SIGTERM 信号,让其安全地退出。如果该进程无法正常退出,可以使用 SIGKILL 信号强制终止进程:

sudo kill -9 1234
停止指定进程名或进程 ID 的进程

如果我们知道要停止的进程的进程名或进程 ID,可以使用以下命令:

sudo killall process_name

该命令将停止所有进程名为 'process_name' 的进程,向其发送 SIGTERM 信号,让其安全地退出。如果需要强制终止进程,可以使用 -9 选项:

sudo killall -9 process_name

如果我们知道要停止的进程的进程 ID,可以使用以下命令:

sudo kill process_id

该命令将向进程 ID 为 'process_id' 的进程发送 SIGTERM 信号,让其安全地退出。如果需要强制终止进程,可以使用 -9 选项。

总结

本文通过使用 Shell 和 Bash 命令,介绍了如何停止在 Ubuntu 系统上运行的进程。主要介绍了根据端口号查找进程并停止它们,以及如何通过进程名或进程 ID 来停止进程。通过本文的学习,希望读者们能够更加熟练地使用 Linux 系统的命令行工具,提高自己的技术水平。