linux命令(7)killall
killall命令:
Linux系统中的killall命令用于杀死指定名字的进程(kill processes by name)。我们可以使用kill命令杀死指定进程PID的进程,如果要找到我们需要杀死的进程,我们还需要在之前使用ps等命令再配合grep来查找进程,而killall把这两个过程合二为一,是一个很好用的命令。
1.命令格式:
- killall[参数][进程名]
2.命令功能:
- 用来结束同名的的所有进程
3.命令参数:
- -Z 只杀死拥有scontext 的进程
- -e 要求匹配进程名称
- -I 忽略小写
- -g 杀死进程组而不是进程
- -i 交互模式,杀死进程前先询问用户
- -l 列出所有的已知信号名称
- -q 不输出警告信息
- -s 发送指定的信号
- -v 报告信号是否成功发送
- -w 等待进程死亡
- --help 显示帮助信息
- --version 显示版本显示
- -u:杀死指定用户的进程
- -r:使用正规表达式匹配要杀死的进程名称
- -p:杀死进程所属的进程组
4.使用实例:
实例1:杀死所有同名进程
命令:killall vi
- [root@localhost ~]# ps -ef|grep vi
root 17581 17398 0 17:51 pts/0 00:00:00 vi test.txt
root 17611 17582 0 17:51 pts/1 00:00:00 grep vi
- [root@localhost ~]# ps -ef|grep vi
root 17581 17398 0 17:51 pts/0 00:00:00 vi test.txt
root 17640 17612 0 17:51 pts/2 00:00:00 vi test.log
root 17642 17582 0 17:51 pts/1 00:00:00 grep vi
- [root@localhost ~]# killall vi
- [root@localhost ~]# ps -ef|grep vi
root 17645 17582 0 17:52 pts/1 00:00:00 grep vi
实例2:向进程发送指定信号
命令:后台运行程序:vi &
杀死 vi进程:killall -TERM vi 或者 killall -KILL vi
- [root@localhost ~]# vi &
[1] 17646[root@localhost ~]# killall -TERM vi
[1]+ Stopped vi
[root@localhost ~]# vi &
- [2] 17648[root@localhost ~]# ps -ef|grep vi
root 17646 17582 0 17:54 pts/1 00:00:00 vi
root 17648 17582 0 17:54 pts/1 00:00:00 vi
root 17650 17582 0 17:55 pts/1 00:00:00 grep vi
[2]+ Stopped vi
- [root@localhost ~]# killall -TERM vi
- [root@localhost ~]# ps -ef|grep vi
root 17646 17582 0 17:54 pts/1 00:00:00 vi
root 17648 17582 0 17:54 pts/1 00:00:00 vi
root 17653 17582 0 17:55 pts/1 00:00:00 grep vi
- [root@localhost ~]# killall -KILL vi
[1]- 已杀死 vi
[2]+ 已杀死 vi
- [root@localhost ~]# ps -ef|grep vi
- root 17656 17582 0 17:56 pts/1 00:00:00 grep vi
- [root@localhost ~]#
实例3:把所有的登录后的shell给杀掉
命令:killall -9 bash
- [root@localhost ~]# w
18:01:03 up 41 days, 18:53, 3 users, load average: 0.00, 0.00, 0.00USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.2.0.68 14:58 9:52 0.10s 0.10s -bash
root pts/1 10.2.0.68 17:51 0.00s 0.02s 0.00s w
root pts/2 10.2.0.68 17:51 9:24 0.01s 0.01s -bash
- [root@localhost ~]# killall -9 bash
- [root@localhost ~]# w
18:01:48 up 41 days, 18:54, 1 user, load average: 0.07, 0.02, 0.00USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.2.0.68 18:01 0.00s 0.01s 0.00s w
- [root@localhost ~]#
运行命令:killall -9 bash 后,所有bash都会被卡掉了,所以当前所有连接丢失了。需要重新连接并登录。
最新文章
- mysql数据库 中文乱码
- P53 T3
- VS.net 2013中使用Git建立源代码管理 版本管理
- node相关--测试
- [转载] 老版本ubuntu 更新源
- Poj 3061 Subsequence(二分+前缀和)
- Android 颜色渲染(四) BitmapShader位图渲染
- php SESSION 不能跨页面传递
- Webform中Repeater控件--绑定嵌入C#代码四种方式
- android采用videoView播放视频(包装)
- UVA - 10014 - Simple calculations (经典的数学推导题!!)
- 四、Hadoop学习笔记————各种工具用法
- Jenkins使用QQ邮箱构建邮件提醒服务
- Spring MVC普通类或工具类中调用service报空空指针的解决办法(调用service报java.lang.NullPointerException)
- Activiti的部署问题
- day27-python阶段性复习-基础
- PuTTY+Xming实现X11的ssh转发
- 20145310《网络对抗》Exp2 后门原理与实践
- aix系统使用随笔
- 2015 - 4- 21 iOS开发越狱环境的搭建1
热门文章
- 要将serviceLocator注入到任何类中
- Hammer.js移动端触屏框架的使用
- Python实现__metaclass__实现方法运行时间统计
- Android项目——网络图片查看器
- 【深入Cocos2d-x】使用MVC架构搭建游戏Four
- KindEditor ---富编辑器
- Share Point 创建 TimerJob
- css @语法,@规则 @import @charset @font-face @fontdef @media @page
- Advancing The Realtime Web With RethinkDB
- Externalizable接口 序列化