终止进程的工具 kill 、killall、pkill、xkill

2024-02-02 01:18

本文主要是介绍终止进程的工具 kill 、killall、pkill、xkill,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

终止一个进程或终止一个正在运行的程序,一般是通过 kill killallpkillxkill 等进行。比如一个程序已经死掉,但又不能退出,这时就应该考虑应用这些工具。

另 外应用的场合就是在服务器管理中,在不涉及数据库服务器程序的父进程的停止运行,也可以用这些工具来终止。为什么数据库服务器的父进程不能用这些工具杀死 呢?原因很简单,这些工具在强行终止数据库服务器时,会让数据库产生更多的文件碎片,当碎片达到一定程度的时候,数据库就有崩溃的危险。比如mysql服务器最好是按其正常的程序关闭,而不是用pkill mysqld killall mysqld 这样危险的动作;当然对于占用资源过多的数据库子进程,我们应该用kill 来杀掉。

 

 

1. kill

kill的应用是和ps pgrep 命令结合在一起使用的;

 

kill 的用法:

kill [信号代码]   进程ID

注:信号代码可以省略;我们常用的信号代码是 -9 ,表示强制终止;

 

举例:

 

 [root@localhost ~]# ps auxf |grep httpd

root 4939 0.0 0.0 5160 708 pts/3 S+ 13:10 0:00 /_ grep httpd

root 4830 0.1 1.3 24232 10272 ? Ss 13:02 0:00 /usr/sbin/httpd

apache 4833 0.0 0.6 24364 4932 ? S 13:02 0:00 /_ /usr/sbin/httpd

apache 4834 0.0 0.6 24364 4928 ? S 13:02 0:00 /_ /usr/sbin/httpd

apache 4835 0.0 0.6 24364 4928 ? S 13:02 0:00 /_ /usr/sbin/httpd

apache 4836 0.0 0.6 24364 4928 ? S 13:02 0:00 /_ /usr/sbin/httpd

apache 4837 0.0 0.6 24364 4928 ? S 13:02 0:00 /_ /usr/sbin/httpd

apache 4838 0.0 0.6 24364 4928 ? S 13:02 0:00 /_ /usr/sbin/httpd

apache 4839 0.0 0.6 24364 4928 ? S 13:02 0:00 /_ /usr/sbin/httpd

apache 4840 0.0 0.6 24364 4928 ? S 13:02 0:00 /_ /usr/sbin/httpd

 

我们查看httpd 服务器的进程;您也可以用pgrep -l httpd 来查看;

 

我们看上面例子中的第二列,就是进程PID的列,其中4830httpd服务器的父进程,从48334840的进程都是它4830的子进程;如果我们杀掉父进程4830的话,其下的子进程也会跟着死掉;

 

[root@localhost ~]# kill 4840 注:杀掉4840这个进程;

[root@localhost ~]# ps -auxf |grep httpd 注:查看一下会有什么结果?是不是httpd服务器仍在运行?

[root@localhost ~]# kill 4830 注:杀掉httpd的父进程;

[root@localhost ~]# ps -aux |grep httpd 注:查看httpd的其它子进程是否存在,httpd服务器是否仍在运行?

 

对于僵尸进程,可以用kill -9 来强制终止退出;

 

比如一个程序已经彻底死掉,如果kill 不加信号强度是没有办法退出,最好的办法就是加信号强度 -9 ,后面要接杀父进程;比如;

 

[root@localhost ~]# ps aux |grep gaim

beinan 5031 9.0 2.3 104996 17484 ? S 13:23 0:01 gaim

root 5036 0.0 0.0 5160 724 pts/3 S+ 13:24 0:00 grep gaim

[root@localhost ~]# pgrep -l gaim

5031 gaim

[root@localhost ~]# kill -9 5031

 

 

2. killall

killall 通过程序的名字,直接杀死所有进程,咱们简单说一下就行了。

 

用法:killall 正在运行的程序名

 

killall 也和pspgrep 结合使用,比较方便;通过pspgrep 来查看哪些程序在运行;

 

举例:

[root@localhost beinan]# pgrep -l gaim

2979 gaim

[root@localhost beinan]# killall gaim

 

3. pkill

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

 

应用方法:

 

#pkill 正在运行的程序名

 

举例:

 

[root@localhost beinan]# pgrep -l gaim

2979 gaim

[root@localhost beinan]# pkill gaim

 

4. xkill

xkill 是在桌面用的杀死图形界面的程序。比如当firefox 出现崩溃不能退出时,点鼠标就能杀死firefox 。当xkill运行时出来和个人脑骨的图标,哪个图形程序崩溃一点就OK了。如果您想终止xkill ,就按右键取消;

 

xkill 调用方法:

[root@localhost ~]# xkill

 

这篇关于终止进程的工具 kill 、killall、pkill、xkill的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/669055

相关文章

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

C#使用SendMessage实现进程间通信的示例代码

《C#使用SendMessage实现进程间通信的示例代码》在软件开发中,进程间通信(IPC)是关键技术之一,C#通过调用WindowsAPI的SendMessage函数实现这一功能,本文将通过实例介绍... 目录第一章:SendMessage的底层原理揭秘第二章:构建跨进程通信桥梁2.1 定义通信协议2.2

使用python制作一款文件粉碎工具

《使用python制作一款文件粉碎工具》这篇文章主要为大家详细介绍了如何使用python制作一款文件粉碎工具,能够有效粉碎密码文件和机密Excel表格等,感兴趣的小伙伴可以了解一下... 文件粉碎工具:适用于粉碎密码文件和机密的escel表格等等,主要作用就是防止 别人用数据恢复大师把你刚删除的机密的文件恢

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

MySQL慢查询工具的使用小结

《MySQL慢查询工具的使用小结》使用MySQL的慢查询工具可以帮助开发者识别和优化性能不佳的SQL查询,本文就来介绍一下MySQL的慢查询工具,具有一定的参考价值,感兴趣的可以了解一下... 目录一、启用慢查询日志1.1 编辑mysql配置文件1.2 重启MySQL服务二、配置动态参数(可选)三、分析慢查

基于Python实现进阶版PDF合并/拆分工具

《基于Python实现进阶版PDF合并/拆分工具》在数字化时代,PDF文件已成为日常工作和学习中不可或缺的一部分,本文将详细介绍一款简单易用的PDF工具,帮助用户轻松完成PDF文件的合并与拆分操作... 目录工具概述环境准备界面说明合并PDF文件拆分PDF文件高级技巧常见问题完整源代码总结在数字化时代,PD

Python按照24个实用大方向精选的上千种工具库汇总整理

《Python按照24个实用大方向精选的上千种工具库汇总整理》本文整理了Python生态中近千个库,涵盖数据处理、图像处理、网络开发、Web框架、人工智能、科学计算、GUI工具、测试框架、环境管理等多... 目录1、数据处理文本处理特殊文本处理html/XML 解析文件处理配置文件处理文档相关日志管理日期和