向进程发送信号:kill、killall和top


这两个命令是用来向进程发送信号的。kill 命令需要进程号作为参数,而 killall 需要进程名称。

  另外,还可以在这两个命令后附加要发送信号序号作为参数。默认情况下,它们都向相关进程发送信号 15 (TERM)。例如,如果您想要终止 PID 为 785 的进程,请输入以下命令:

  $ kill 785

  如果您要向它发送信号 19 (STOP),请输入:

  $ kill -19 785

  假设您知道想要终止的进程的命令名称。您可以通过该名称来终止它,而不用再使用 ps 找出该进程的进程号:

  $ killall -9 mozilla

  无论如何,您只能终止您自己的进程(除非您是 root),因此当您运行多用户系统时您不必担心您“邻居”的进程,它们不会受到影响。

  综合 ps 和 kill:top

  top 程序同时完成 ps 和 kill 的功能,并能用于实时监控进程的 CPU 和内存使用状况、执行时间等等。如图  “用 top 监控进程”所示。

  

  图 用top 监控进程

  top 工具完全使用键盘控制。按下 h 就能访问其帮助信息。其最有用的命令如下:

  k:用于向某进程发送信号。top 随后会询问您进程的 PID 以及要发送的信号序号或信号名称(默认为 TERM,即信号 15);

  M:按照内存使用情况(%MEM 列)对进程排序;

  P:按照 CPU 使用时间(默认为 %CPU 列)对进程排序;

  u:显示给定用户的进程。top 会向您询问是哪个用户。请输入该用户的名称,而不是他的 UID。如果您没有输入任何名称,将显示所有进程;

  i:默认显示所有进程,包括睡眠进程。而这条命令确保只显示当前正在运行的进程(STAT 列为 R (运行)的那些进程)。再次输入该命令将返回显示所有进程。

  r:改变选中进程的优先级别


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3