Kill命令怎么用 Linux Kill命令用法详解

Kill命令用来删除执行中的程序或工作,Kill命令将信号发送到指定的进程或进程组,使它们根据该信号进行操作。那么Kill命令怎么用,本文为大家介绍下Linux Kill命令用法详解。

一、kill命令

Kill命令语法:

kill [OPTIONS] [PID]..

最常用的信号是:

  • 1HUP)-重新加载进程。
  • 9KILL)-终止进程。
  • 15TERM)-正常停止进程。

要获取所有可用信号的列表,请使用以下-l选项调用命令:

kill -l

可以用三种不同的方式指定信号:

  1. 使用数字(例如-1-s 1)。
  2. 使用“ SIG”前缀(例如-SIGHUP-s SIGHUP)。
  3. 没有“ SIG”前缀(例如-HUP-s HUP)。

以下命令彼此等效:

kill -1 PID_NUMBER
kill -SIGHUP PID_NUMBER
kill -HUP PID_NUMBER

提供给kill命令的PID 可以是以下之一:

  • 如果PID大于零,则将信号发送到ID等于的进程PID
  • 如果PID等于零,则将信号发送到当前过程组中的所有过程。换句话说,该信号将发送到属于调用kill命令的外壳程序的GID的所有进程。使用ps -efj命令查看进程组ID(GID)。
  • 如果PID等于-1,则信号以与用户调用命令相同的UID发送到所有进程。如果调用用户是root用户,则信号将发送到除init和kill进程本身之外的所有进程。
  • 如果PID小于-1,则将信号发送到GID等于的绝对值的进程组eq中的所有进程PID

普通用户可以将信号发送到自己的进程,但不能发送信号给其他用户,而根用户可以将信号发送到其他用户的进程。

二、使用kill命令终止进程

要使用kill命令终止或终止进程,首先需要找到进程ID号(PID)。为此,您可以使用不同的命令,例如toppspidofpgrep

假设Firefox浏览器已无响应,并且您需要终止Firefox进程。要查找浏览器的PID,请使用以下pidof命令:

pidof firefox

该命令将打印所有Firefox进程的ID:

6263 6199 6142 6076

一旦知道了进程号,就可以通过发送TERM信号来终止所有进程号:

kill -9 2551 2514 1963 1856 1771

您可以将上述命令组合为一个命令,而不是先搜索PID然后终止进程。

kill -9 $(pidof firefox)

三、使用kill命令重新加载进程

另一个常见用例kill是发送HUP信号,该信号告诉进程重新加载其设置。

例如,要重新加载Nginx,您需要向主进程发送一个信号。Nginx主进程的进程ID可以在nginx.pid文件中找到,该文件通常位于/var/run目录中。

使用cat命令查找主PID:

cat /var/run/nginx.pid
30251

一旦找到主PID,请输入以下内容重新加载Nginx设置:

sudo kill -1 30251

上面的命令必须以root用户或具有sudo特权的用户身份运行。

THE END
点赞610 分享