linux中kill命令默认发出的信号,linux中的kill命令的详细解释
linxu下的kill命令主要功能是用来杀死进程的。下面由学习啦小编为大家整理了linux的kill命令的详细解释的相关知识,希望对大家有帮助!
一、linux中的kill命令的详细解释
1.命令格式:
kill[参数][进程号]
2.命令功能:
发送指定的信号到相应进程。不指定型号将发送SIGTERM(15)终止指定进程。如果任无法终止该程序可用“-KILL” 参数,其发送的信号为SIGKILL(9) ,将强制结束进程,使用ps命令或者jobs 命令可以查看进程号。root用户将影响用户的进程,非root用户只能影响自己的进程。
3.命令参数:
-l 信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称
-a 当处理当前进程时,不限制命令名和进程号的对应关系
-p 指定kill 命令只打印相关进程的进程号,而不发送任何信号
-s 指定发送信号
-u 指定用户
注意:
1、kill命令可以带信号号码选项,也可以不带。如果没有信号号码,kill命令就会发出终止信号(15),这个信号可以被进程捕获,使得进程在退出之前可以清理并释放资源。也可以用kill向进程发送特定的信号。例如:
kill -2 123
它的效果等同于在前台运行PID为123的进程时按下Ctrl+C键。但是,普通用户只能使用不带signal参数的kill命令或最多使用-9信号。
2、kill可以带有进程ID号作为参数。当用kill向这些进程发送信号时,必须是这些进程的主人。如果试图撤销一个没有权限撤销的进程或撤销一个不存在的进程,就会得到一个错误信息。
3、可以向多个进程发信号或终止它们。
4、当kill成功地发送了信号后,shell会在屏幕上显示出进程的终止信息。有时这个信息不会马上显示,只有当按下Enter键使shell的命令提示符再次出现时,才会显示出来。
5、应注意,信号使进程强行终止,这常会带来一些副作用,如数据丢失或者终端无法恢复到正常状态。发送信号时必须小心,只有在万不得已时,才用kill信号(9),因为进程不能首先捕获它。要撤销所有的后台作业,可以输入kill 0。因为有些在后台运行的命令会启动多个进程,跟踪并找到所有要杀掉的进程的PID是件很麻烦的事。这时,使用kill 0来终止所有由当前shell启动的进程,是个有效的方法。
二、linux中的kill命令的详解实例
(1)强行中止(经常使用杀掉)一个进程标识号为324的进程:
#kill -9 324
(2)解除Linux系统的死锁
在Linux中有时会发生这样一种情况:一个程序崩溃,并且处于死锁的状态。此时一般不用重新启动计算机,只需要中止(或者说是关闭)这个有问题的程序即可。当kill处于X-Window界面时,主要的程序(除了崩溃的程序之外)一般都已经正常启动了。此时打开一个终端,在那里中止有问题的程序。比如,如果Mozilla浏览器程序出现了锁死的情况,可以使用kill命令来中止所有包含有Mozolla浏览器的程序。首先用top命令查处该程序的 PID,然后使用kill命令停止这个程序:
#kill -SIGKILL XXX
其中,XXX是包含有Mozolla浏览器的程序的进程标识号。
(3)使用命令回收内存
我们知道内存对于系统是非常重要的,回收内存可以提高系统资源。kill命令可以及时地中止一些“越轨”的程序或很长时间没有相应的程序。例如,使用top命令发现一个无用 (Zombie) 的进程,此时可以使用下面命令:
#kill -9 XXX
其中,XXX是无用的进程标识号。
然后使用下面命令:
#free
此时会发现可用内存容量增加了。
(4)killall命令
Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:
# killall -HUP inetd
三、linux的kill命令的常用命令
常用命令
1.$ kill -15 pid
这条命令发信号让进程正常退出。所谓的正常退出是指按应用程序自己的退出流程完成退出,这样就可以清理并释放资源。比如 vim 程序,如果是正常的退出,就会删除掉临时文件 *.swp。
既然信号 15 是退出进程的正确方式,那它也应该是最常用的方式,因而我们可以省略参数 -15。
2.$ kill pid
这条命令和上面的命令是等价的,kill 命令默认发送信号 15 给目标进程。
当进程出现了异常状况,不能通过信号15正常退出时,我们就需要通过非常的手段直接终结掉进程。所谓的非常手段就是传递信号 9 给目标进程!
3.$ kill -9 pid
这样结束掉的进程不会进行资源的清理工作,所以如果你用它来终结掉 vim 的进程,就会发现临时文件 *.swp 没有被删除。
linux中kill命令默认发出的信号,linux中的kill命令的详细解释相关推荐
- linux中kill命令默认发出的信号,Linux信号发送命令之kill命令
kill 作用:向进程发送信号.注意: kill命令只是用来向进程发送信号的,而不是直接杀死进程. kill命令的一般使用格式:kill [参数] 进程号进程号可用ps命令查看 kill的参数:-l ...
- linux两个网段默认网关_关于linux的默认网关
默认网关是一个用于 TCP/IP 协议的配置项,是一个可直接到达的 IP 路由器的 IP 地址.配置默认网关可以在 IP 路由表中创建一个默认路径. 一台主机可以有多个网关.默认网关的意思是一台主机如 ...
- linux怎么修改sftp默认端口,如何在 Linux 系统中如何更改 SFTP 端口
SFTP(SSH文件传输协议)是一种安全文件协议,用于通过加密连接在两个主机之间传输文件. 它还允许您对远程文件执行各种文件操作并恢复文件传输. SFTP可以替代旧版FTP协议. 它具有FTP的所有功 ...
- python中怎么设置默认值_在Python中设置应该是列表的参数的默认值的最佳实践?...
我有一个将列表作为参数的python函数.如果我将参数的默认值设置为如下空列表: def func(items=[]): print items 皮林特会告诉我"危险的默认值[]作为参数&q ...
- linux怎么修改sftp默认端口,转:linux 修改sftp服务默认提供者sshd的session timeout
NAT firewalls like to time out idle sessions to keep their state tables clean and their memory footp ...
- 以下关于程序设计语言的叙述中,不正确的是()【最全!最详细解释!!】
以下关于程序设计语言的叙述中,不正确的是() A. 脚本语言不使用变量和函数 B. 标记语言常用描述格式化和链接 C. 脚本语言采用解释方式实现 D. 编译型语言的执行效率更高 解释: 编程语言:是用 ...
- matlab中的dsolve函数是用来解决什么问题的?请详细解释并给我几个简单的例子...
"dsolve" 函数是 MATLAB 中用于解决微分方程的函数.它的目的是解决一阶或多阶常微分方程的解析解,并且可以对解进行可视化. 下面是几个简单的例子: 一阶常微分方程:dy ...
- linux 查看进程的信号,Linux 进程信号查看与控制
Linux 进程信号查看与控制 1) SIGHUP 本信号在用户终端连接 (正常或非正常) 结束时发出 通常是在终端的控制进程结束时 通知同一 session 内的各个作业 这时它们与控制终端不再关联 ...
- linux进程被信号杀死,linux杀死进程以及发送或响应信号
摘要 腾兴网为您分享:linux杀死进程以及发送或响应信号,真还赚,邮币在线,优美图,小t智联等软件知识,以及idevice,cdr条码生成器,二手车闪卖,卡卡日语,微帮手,arpr,萤石云监控,nf ...
最新文章
- 【GTSAM】GTSAM学习
- RuntimeError: dictionary changed size during iteration 解决办法
- 华为实习日记——第四天
- java 克隆的作用_关于java中克隆的学习(一)
- Custom PuTTY Color Themes
- php 判断ajax访问,PHP里判断是否Ajax请求
- 【Elasticsearch】我在 Elasticsearch 集群内应该设置多少个分片?
- 使用re-sign.jar对apk进行重签名
- 42. Understand the two meanings of typename.
- mnist数据集下载linux,机器学习数据集篇——MNIST数据集
- 计算机网络基础课程思政,《计算机网络技术》课程思政融入.pdf
- Xcode创建头文件
- python批量打印word文件
- 连接微信运动服务器忙,为啥微信运动突然不计步了(只需一招问题立马解决)...
- 当限量潮牌遇到 DeFi, 币圈项目社群当投机时尚结合加密基元
- 最详细的App自动化常用的元素审查器
- 中国34个省市 按字母排序 uniapp城市列表
- 【python小练】0014题 和 0015 题
- 解决 使用Xftp传输文件状态错误
- 物联网平台架构及关键技术一览