Linux 中杀死多个进程
在任何给定时刻,您的 Linux 系统都同时运行多个进程。因此,了解如何管理流程以及如何在需要时终止流程是一项重要技能。可以使用各种命令终止进程,例如 kill
、killall
和 pkill
。
Linux 命令行为我们提供了几种不同的方式来终止进程。使用多种工具来完成这项工作(这在 Linux 上很常见)很方便,但会造成一些混乱,因为它们都有一些功能重叠。在本教程中,我们将解释如何使用单个命令终止多个进程。这可以节省时间,而不必单独终止每个进程,并且可以帮助您在产生许多相同类型的进程时快速控制进程。
在本教程中您将学习:
如何使用
kill
杀死多个进程如何使用
pkill
杀死多个进程如何使用
killall
杀死多个进程pkill
和killall
命令示例
Linux 中如何杀死多个进程
Linux 为我们提供了三种杀死 Linux 上进程的工具:kill
、killall
和 pkill
命令。它们中的任何一个都完全有能力终止进程,但有些提供了便利,使它们在某些情况下比其他进程更具优势。
使用kill命令杀死多个进程
Linux 用户通常会使用 kill
命令来强制终止正在运行的进程。
kill
命令的正常语法是指定要终止的进程 ID。在这种情况下,我们将终止进程1234
。$ kill 1234
为了一次杀死多个进程,我们只需在
kill
命令中指定所有相关的进程 ID。$ kill 1234 2345
默认情况下,
kill
命令将向进程发送TERM
信号。这可以通过使用命令标志来更改。例如,-9
标志将发送KILL
信号。$ kill -9 1234 2345
使用killall命令杀死多个进程
killall
命令按名称终止进程。请参阅我们有关如何使用 Killall 命令的完整教程。
例如,如果您的系统上有一个 SSH 守护进程(以 sshd 进程名称运行)并且需要结束它,则将使用以下命令。
$ sudo killall sshd
如果您有多个同名进程,则所有这些进程都将被终止,因此“killall.all”中的“all”将被终止。 ” 请注意,您需要完全匹配名称。
与
kill
类似,您可以向进程发送其他信号,而不是默认的TERM
。同样,-9
选项将发送KILL
信号。$ sudo killall -9 sshd
使用 pkill 命令杀死多个进程
我们可以用来一次终止多个进程的另一个命令是 pkill。这与 killall
类似,但不同之处在于不需要我们指定进程的确切名称。
如果您正在运行一个名为
example.sh
的进程,则在pkill
命令中仅提供与该名称的部分匹配将终止该进程(以及所有其他匹配进程)。$ pkill examp
与其他命令一样,
pkill
可以发送多种类型的信号。同样,-9
选项将发送KILL
信号。$ pkill -9 example.sh
结束语
在本教程中,您了解了如何在 Linux 系统上同时终止多个进程。这可以通过 kill
、killall
和 pkill
Linux 命令来完成。
这些命令中的每一个都带有自己广泛的选项列表,其中许多选项彼此重叠或基于kill命令。尽管如此,所有的kill命令都有自己的用途,将这三个命令都放在Linux管理工具带中会很有帮助。如果您想了解它们的更高级用法,请查看手册页。
$ man killall
$ man pkill
$ man kill