日期:2014-05-16  浏览次数:20703 次

Linux: 结束查看进程命令[转]

终止一个进程或终止一个正在运行的程序,一般是通过 kill 、killall、pkill、xkill 等进行。
-------------------------------
先看两个例子:

例子一:结束某个程序,如Firefox????
键入命令:
pkill firefox

例子二: 结束某个进程,如find??????????

先用ps命令来查看该进程对应的PID。
键入ps,显示如下:
PID TTY TIME COMMAND
285 1 00:00:00 -bash
287 3 00:00:00 -bash
289 5 00:00:00 /sbin/mingetty tty5
290 6 00:00:00 /sbin/mingetty tty6
312 3 00:00:00 telnet bbs3
341 4 00:00:00 /sbin/mingetty tty4
345 1 00:00:00 find / -name foxy.jpg
348 1 00:00:00 ps

可以看到该进程对应的PID是345,现在使用kill命令来终止该进程。
键入:
# kill 345

再用ps命令查看,就可以看到,find进程已经被杀掉了。
---------------------------------------
下面来了解相关命令:

一、查看进程的命令 有ps、pstree、pgrep等:?????????????????????????????????????????

1、ps??????????????????????????????????????????????
显示进程信息,参数可省略
-aux??? 以BSD风格显示进程 常用
-efH??? 以System V风格显示进程
-e , -A 显示所有进程
a???????? 显示终端上所有用户的进程
x???????? 显示无终端进程
u???????? 显示详细信息
f????????? 树状显示
w??????? 完整显示信息
l????????? 显示长列表

在终端中执行ps aux,如下图:
?

各列输出字段的含义:

USER???????? 进程所有者
PID??????????? 进程ID
PPID????????? 父进程
%CPU??????? CPU占用率
%MEM????? 内存占用率
NI???????????? 进程优先级。数值越大,占用CPU时间越少
VSZ?????????? 进程虚拟大小
RSS??????????? 页面文件占用
TTY??????????? 终端ID
STAT????????? 进程状态
+---D??? 不可中断???? Uninterruptible sleep (usually IO)
+---R??? 正在运行,或在队列中的进程
+---S??? 处于休眠状态
+---T??? 停止或被追踪
+---Z??? 僵尸进程
+---W??? 进入内存交换(从内核2.6开始无效)
+---X??? 死掉的进程

+---<??? 高优先级
+---N??? 低优先级
+---L??? 有些页被锁进内存
+---s??? 包含子进程
+---+??? 位于后台的进程组;
+---l??? 多线程,克隆线程? multi-threaded (using CLONE_THREAD, like NPTL pthreads do)

PID:进程标识符,系统为每一个进程分配一个识别码,称为PID。?????????

ps命令极为常用,其他命令还有:

2.pstree?????????????????????????????????????????
树状显示进程信息
-a 显示完整命令及参数
-c 重复进程分别显示
-c 显示进程ID PID
-n 按 PID 排列进程

3.pgrep <进程名>????????????????????????????
显示进程的PID
-l 显示进程名和进程PID
-o 进程起始ID
-n 进程终止ID

二、结束进程的命令 有kill、pkill、killall、xkill等:?????????????????????????????????????

kill [信号代码] <进程PID>?????????????????

根据PID向进程发送信号,常用来结束进程,默认信号为 -9
信号代码,可取值如下:
-l [信号数字] 显示、翻译信号代码
-9 , -KILL 发送 kill 信号退出
-6 , -ABRT 发送 abort 信号退出
-15 , -TERM 发送 Termination 信号
-1 , -HUP 挂起
-2 , -INT 从键盘中断,相当于 Ctrl+c
-3 , -QUIT 从键盘退出,相当于 Ctrl+d
-4 , -ILL 非法指令
-11 , -SEGV 内存错误
-13 , -PIPE 破坏管道
-14 , -ALRM
-STOP 停止进程,但不结束
-CONT 继续运行已停止的进程
-9 -1 结束当前用户的所有进程

pkill <进程名>????????????????????????????????
结束进程族。如果结束单个进程,请用 kill

killall <进程名>???????????????????????????????
killall和pkill 应用方法差不多,也是直接杀死运行中的程序;如果您想杀掉单个进程,请用kill 来杀掉。

xkill???????????????????????????????????????????????
在图形界面中点杀进程。
当xkill运行时鼠标指针变为骷髅图案,哪个图形程序崩溃一点就OK了。如果您想终止xkill ,就按右键取消。
比如当firefox 出现崩溃不能退出时,点鼠标就能杀死firefox 。
xkill 调用方法:
[root@localhost ~]# xkill

?

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xiaofengsheng/archive/2010/04/30/5544594.aspx