Linux 通过 PID 杀死进程 您所在的位置:网站首页 结束进程是哪个 Linux 通过 PID 杀死进程

Linux 通过 PID 杀死进程

2024-07-04 06:54| 来源: 网络整理| 查看: 265

Linux 通过 PID 杀死进程

在 Linux(以及大多数现代操作系统)中,强制终止进程需要发送适当的终端信号。有多种方法可以向特定进程发送终止信号。如果知道目标进程的PID(进程ID),那么kill命令可以直接向其发送终止信号。

在本指南中,我们将演示如何通过 PID 杀死 Linux 进程。

Linux 中的 PID

术语 PID 是“进程标识号”的缩写。每个进程在系统上创建时都会被分配一个唯一的 PID。 PID 号 1 分配给 systemd(init,对于较旧的系统)。本质上,systemd 或 init 始终是 Linux 上启动的第一个进程,并且是所有其他进程的父进程。

我们可以使用一些工具来获取目标进程的 PID。获取 PID 最流行(也是推荐)的方法是使用 ps 命令。它是所有 Linux 系统上都可用的内置工具。更深入地了解 Linux 中的 ps 命令。

要打印所有正在运行的进程及其 PID,请运行以下 ps 命令:

$ ps -ef

为了更轻松地导航,请将输出通过管道传输到 less 命令:

$ ps -ef | less

请注意,PID 列列出了按 PID 排序的所有进程。这就是我们正在寻找的价值。

正在寻找具有特定名称的特定进程?那么 grep 命令就是你的朋友。它可以在给定文件(本例中为 STDOUT)中搜索特定模式。例如,以下命令将搜索任何正在运行的 Firefox 进程:

$ ps -ef | grep firefox

如果知道目标进程的名称,那么我们可以使用pidof命令直接获取PID。

$ pidof firefox

另一个有趣的命令是 pgrep。它直接对当前正在运行的进程列表进行操作。 pgrep 命令将以进程名称作为参数并打印任何匹配条目的 PID。

$ pgrep firefox

记下目标进程的 PID。本文的下一部分将展示如何通过 PID 终止进程。

杀死一个进程

杀死一个进程需要向该进程发送终端信号。然而,没有一个终止信号。他们有好几个,每个人的行为都与其他人略有不同。因此,首先了解它们至关重要。

Linux 终止信号

Linux 中的kill 命令负责发送终止信号。有关详细说明,请查看有关 Linux Kill 命令的指南。简而言之,您告诉kill命令将什么信号发送到哪个进程(使用PID)。

要获取所有终止信号的完整列表,请运行以下命令:

$ kill -l

然而,在大多数情况下,我们只需要其中的一小部分。以下是您应该了解的最常见终止信号的详细说明。

SIGUP (1) – 控制终端挂起或控制进程死亡。在这种情况下,SIGUP将重新加载配置文件并打开/关闭日志文件。

SIGKILL (9) – 这是发送给目标进程的直接终止信号。它应该被用作终止进程的最后手段。如果使用 SIGKILL 终止进程,则在进程终止时不会保存数据或清理。

SIGTERM (15) – 向目标进程发送终止信号。 SIGTERM 是默认发送的信号。它也被认为是终止进程的最安全方法。

使用 Kill 终止进程

这是 Linux 上终止目标进程的默认方式。 Kill 命令遵循以下命令结构:

$ kill -

例如,要将 SIGTERM 发送到进程,命令如下所示:

$ kill -15

同样,如果要发送SIGKILL,则使用以下命令:

$ kill -9

通过深入的解释和示例了解有关 Linux Kill 命令的更多信息。

使用 Killall 终止多个进程

Killall 命令的作用与kill 类似。但是,它没有定义特定的 PID,而是使用进程名称并将指定的终止信号发送到与该名称匹配的所有进程。

Killall 的命令结构如下所示:

$ killall -

例如,以下killall命令将向所有正在运行的Firefox进程发送SIGTERM:

$ killall -15 firefox

查看有关 Linux Killall 命令的指南,了解带有示例的详细说明。还建议查看killall 的手册页:

$ man killall使用 pkill 终止多个进程

与killall命令类似,pkill也可以根据名称查找进程并发送指定的终止信号。命令结构也几乎相似;

$ pkill -

例如,使用以下 pkill 命令通过 SIGTERM 终止 Firefox 进程:

$ pkill -15 firefox

与往常一样,请检查 pkill 的手册页以获取所有细微差别的深入解释:

$ man pkill最后的想法

本指南展示了通过 PID 杀死进程的各种方法。它还演示了使用进程名称而不是 PID 的替代方法。拥有多种可供使用的工具总是更好。这里,我们使用 ps 和 pgrep 命令来查找 PID,并使用kill、pkill 和killall 命令来杀死进程。

在许多情况下,您可能希望摆脱出现故障的令人讨厌的后台进程。了解有关识别 Linux 中后台进程的更多信息。然后,按照本指南中的方法,您可以轻松删除不需要的内容。祝您计算愉快!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有