分类: LINUX
2010-01-22 10:04:24
这两个命令是用来向进程发送信号的。kill 命令需要进程号作为参数,而 killall 需要进程名称。
另外,还可以在这两个命令后附加要发送信号序号作为参数。默认情况下,它们都向相关进程发送信号 15 (TERM)。例如,如果您想要终止 PID 为 785 的进程,请输入以下命令:
$ kill 785 |
如果您要向它发送信号 19 (STOP),请输入:
$ kill -19 785 |
假设您知道想要终止的进程的命令名称。您可以通过该名称来终止它,而不用再使用 ps 找出该进程的进程号:
$ killall -9 mozilla |
无论如何,您只能终止您自己的进程(除非您是 root),因此当您运行多用户系统时您不必担心您“邻居”的进程,它们不会受到影响。
top 程序同时完成 ps 和 kill 的功能,并能用于实时监控进程的 CPU 和内存使用状况、执行时间等等。如所示。
图 6.1. 用 top 监控进程
top 工具完全使用键盘控制。按下 h 就能访问其帮助信息。其最有用的命令如下:
k:用于向某进程发送信号。top 随后会询问您进程的 PID 以及要发送的信号序号或信号名称(默认为 TERM,即信号 15);
M:按照内存使用情况(%MEM 列)对进程排序;
P:按照 CPU 使用时间(默认为 %CPU 列)对进程排序;
u:显示给定用户的进程。top 会向您询问是哪个用户。请输入该用户的名称,而不是他的 UID。如果您没有输入任何名称,将显示所有进程;
i:默认显示所有进程,包括睡眠进程。而这条命令确保只显示当前正在运行的进程(STAT 列为 R (运行)的那些进程)。再次输入该命令将返回显示所有进程。
r:改变选中进程的优先级别。