访问手机版  

Linux常用命令|Linux培训学习|考试认证|工资待遇与招聘,认准超级网工!

招聘|合作 登陆|注册

网络工程师培训

当前位置:网络工程师 > 技术课程 > linux > 热点关注 > linux常用命令

Linux kill命令详解:终止进程

时间:2019-07-19

linux命令_linux解压命令_linux 命令

kill 从字面来看,就是用来杀死进程的命令,但事实上,这个或多或少带有一定的误导性。从本质上讲,kill 命令只是用来向进程发送一个信号,至于这个信号是什么,是用户指定的。

也就是说,kill 命令的执行原理是这样的,kill 命令会向操作系统内核发送一个信号(多是终止信号)和目标进程的 PID,然后系统内核根据收到的信号类型,对指定进程进行相应的操作。

kill 命令的基本格式如下:

[root@localhost ~]# kill [信号] PID

如果后台中有多个命令,可以用fg %jobnumber(是命令编号linux命令,不是进程号)将选中的命令调出。system()会调用fork()产生子进程, 由子进程来调用/bin/sh-c string 来执行参数string 字符串所代表的命令, 此命令执行完后随即返回原调用的进程. 在调用system()期间sigchld 信号会被暂时搁置,sigint 和sigquit 信号则会被忽略。以下是所涉及到的dos命令详解及windows常用进程:一、tasklist命令:tasklist [/s system [/u username [/p [password]]]][/m [module] | /svc | /v] [/fi filter] [/fo format] [/nh]描述:这个命令行工具显示应用程序和本地或远程系统上运行的相关任务/进程的列表。

表 1 kill命令常用信号及其含义信号编号信号名含义

EXIT

程序退出时收到该信息。

挂掉电话线或终端连接的挂起信号,这个信号也会造成某些进程在没有终止的情况下重新初始化。

如果你用的是xp系统,这个进程在“任务管理器”中就结束不掉,结束掉的进程说明这个进程不能对系统造成直接危害,不过,用其它软件可能能强制结束,但这样会造成蓝屏等现象。父子进程共同组成一个进程组,这样linux命令,当从键盘发出一个信号时,该信号被送给当前与键盘相关的进程组中的所有成员。一旦发现某个进程有问题,可以直接右键结束它,甚至删除它,如果正常结束不了,还有强制结束选项,这点对我们处理一些顽固进程非常有好处。

QUIT

退出。

linux解压命令_linux命令_linux 命令

KILL

杀死进程,即强制结束进程。

SEGV

段错误。

TERM

正常结束进程,是kill 命令的默认信号。

需要注意的是,表中省略了各个信号名称的前缀 SIG,也就是说,SIGTERM 和 TERM 这两种写法都对,kill 命令都可以理解。

下面,我们举几个例子来说明一下 kill 命令。

【例 1】 标准 kill 命令。

[root@localhost ~】# service httpd start

#启动RPM包默认安装的apache服务

[root@localhost ~]# pstree -p 丨 grep httpd | grep -v "grep"

linux 命令_linux解压命令_linux命令

#查看 httpd 的进程树及 PID。grep 命令査看 httpd 也会生成包含"httpd"关键字的进程,所以使用“-v”反向选择包含“grep”关键字的进程,这里使用 pstree 命令来查询进程,当然也可以使用 ps 和 top 命令

|-httpd(2246)-+-httpd(2247)

| |-httpd(2248)

| |-httpd(2249)

| |-httpd(2250)

| |-httpd(2251)

[root@localhost ~]# kill 2248

#杀死PID是2248的httpd进程,默认信号是15,正常停止

#如果默认信号15不能杀死进程,则可以尝试-9信号,强制杀死进程