linux常用命令:killall 命令
killall命令用进程的名字来杀死进程。
1.命令格式:
killall [ -egiqvw ] [ -signal ] [进程名称]
格式:killall -<signame> <command-name>
格式:killall -<signum> <command-name>
发送指定的信号到名字为<command-name>的所有进程。指定的信号可以是名称<signame>,也可以是信号对应的数字<signum>。
下面是常用的信号:
第一列为<signame>,第二列为<signum>,第三列为信号的含义。
HUP 终端断线
INT 中断(同 Ctrl + C)
QUIT 退出(同 Ctrl + \)
KILL 强制终止
TERM 终止
CONT 继续(与STOP相反, fg/bg命令)
STOP 暂停(同 Ctrl + Z
2.命令功能:
用来结束同名的的所有进程
我们可以使用kill命令杀死指定进程PID的进程,如果要找到我们需要杀死的进程,我们还需要在之前使用ps等命令再配合grep来查找进程,而killall把这两个过程合二为一,是一个很好用的命令。
killall发送一条信号给所有运行任意指定命令的进程. 如果没有指定信号名, 则发送 SIGTERM。
3.命令参数:
1) -I 在发送信号给指定名称的进程时忽略大小写
2) -i 交互模式,杀死进程前先询问用户
3) -e 要求匹配进程名称(当进程名大于15个字符时有用http://os.51cto.com/art/201405/437678.htm)
4) -s 发送指定的信号
5) -v 报告信号是否发送成功
6) -w 等待所有杀的进程死去。killall 会每秒检查一次是否任何被杀的进程仍然存在, 仅当都死光后才返回.
注意: 如果信号被忽略或没有起作用, 或者进程停留在僵尸状态, killall 可能会永久等待。
4.使用实例
1)[root@localhost xiong]# killall -9 bash
[root@localhost xiong]# ps -ef |grep bash root 6月26 ? :: /bin/bash /usr/sbin/ksmtuned xiong 6月26 ? :: /usr/bin/ssh-agent /bin/sh -c exec -l /bin/bash -c "env GNOME_SHELL_SESSION_MODE=classic gnome-session --session gnome-classic" xiong : pts/ :: bash root : pts/ :: bash root : pts/ :: grep --color=auto bash [root@localhost xiong]# killall bash //并没有起到任何作用 [root@localhost xiong]# ps -ef |grep bash root 6月26 ? :: /bin/bash /usr/sbin/ksmtuned xiong 6月26 ? :: /usr/bin/ssh-agent /bin/sh -c exec -l /bin/bash -c "env GNOME_SHELL_SESSION_MODE=classic gnome-session --session gnome-classic" xiong : pts/ :: bash root : pts/ :: bash root : pts/ :: grep --color=auto bash
说明:当使用killall -9 bash时将会退出root和用户的登录。
2)[root@localhost Documents]# killall -9 vi 杀死进程名为vi的所有进程
[root@localhost Documents]# vi text1.txt []+ 已停止 vi text1.txt [root@localhost Documents]# vi text2.txt []+ 已停止 vi text2.txt [root@localhost Documents]# ps -ef | grep "vi" root 6月26 ? :: /usr/bin/abrt-watch-log -F BUG: WARNING: at WARNING: CPU: INFO: possible recursive locking detected ernel BUG at list_del corruption list_add corruption do_IRQ: stack overflow: ear stack overflow (cur: eneral protection fault nable to handle kernel ouble fault: RTNL: assertion failed eek! page_mapcount(page) went negative! adness at NETDEV WATCHDOG ysctl table check failed : nobody cared IRQ handler type mismatch Machine Check Exception: Machine check events logged divide error: bounds: coprocessor segment overrun: invalid TSS: segment not present: invalid opcode: alignment check: stack segment: fpu exception: simd exception: iret exception: /var/log/messages -- /usr/bin/abrt-dump-oops -xtD root 6月26 ? :: /usr/sbin/libvirtd xiong 6月26 ? :: /usr/libexec/goa-identity-service xiong 6月26 ? :: /usr/libexec/dconf-service root : pts/ :: vi text1.txt root : pts/ :: vi text2.txt root : pts/ :: grep --color=auto vi [root@localhost Documents]# ps -ef |grep "text" //根据text能找着名字为vi的进程 root : pts/ :: vi text1.txt root : pts/ :: vi text2.txt root : pts/ :: grep --color=auto text [root@localhost Documents]# killall text //但并不能通过它来删除进程 text: no process found [root@localhost Documents]# killall vi //还是不起效果 [root@localhost Documents]# ps -ef | grep "vi" root 6月26 ? :: /usr/bin/abrt-watch-log -F BUG: WARNING: at WARNING: CPU: INFO: possible recursive locking detected ernel BUG at list_del corruption list_add corruption do_IRQ: stack overflow: ear stack overflow (cur: eneral protection fault nable to handle kernel ouble fault: RTNL: assertion failed eek! page_mapcount(page) went negative! adness at NETDEV WATCHDOG ysctl table check failed : nobody cared IRQ handler type mismatch Machine Check Exception: Machine check events logged divide error: bounds: coprocessor segment overrun: invalid TSS: segment not present: invalid opcode: alignment check: stack segment: fpu exception: simd exception: iret exception: /var/log/messages -- /usr/bin/abrt-dump-oops -xtD root 6月26 ? :: /usr/sbin/libvirtd xiong 6月26 ? :: /usr/libexec/goa-identity-service xiong 6月26 ? :: /usr/libexec/dconf-service root : pts/ :: vi text1.txt root : pts/ :: vi text2.txt root : pts/ :: grep --color=auto vi [root@localhost Documents]# vi //经过测试,只有加上-9才会起作用 []- 已杀死 vi text1.txt []+ 已杀死 vi text2.txt
3)[root@localhost Documents]# killall -l 打印所有已知信号列表
[root@localhost Documents]# killall -l HUP INT QUIT ILL TRAP ABRT IOT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH IO PWR SYS UNUSED [root@localhost Documents]# kill -l ) SIGHUP ) SIGINT ) SIGQUIT ) SIGILL ) SIGTRAP ) SIGABRT ) SIGBUS ) SIGFPE ) SIGKILL ) SIGUSR1 ) SIGSEGV ) SIGUSR2 ) SIGPIPE ) SIGALRM ) SIGTERM ) SIGSTKFLT ) SIGCHLD ) SIGCONT ) SIGSTOP ) SIGTSTP ) SIGTTIN ) SIGTTOU ) SIGURG ) SIGXCPU ) SIGXFSZ ) SIGVTALRM ) SIGPROF ) SIGWINCH ) SIGIO ) SIGPWR ) SIGSYS ) SIGRTMIN ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX
4)[root@localhost Documents]# killall -s TERM vi 发送指定的信号给指定名称的进程
[root@localhost Documents]# killall -s TERM vi [root@localhost Documents]# ps -ef | grep vi root 6月26 ? :: /usr/bin/abrt-watch-log -F BUG: WARNING: at WARNING: CPU: INFO: possible recursive locking detected ernel BUG at list_del corruption list_add corruption do_IRQ: stack overflow: ear stack overflow (cur: eneral protection fault nable to handle kernel ouble fault: RTNL: assertion failed eek! page_mapcount(page) went negative! adness at NETDEV WATCHDOG ysctl table check failed : nobody cared IRQ handler type mismatch Machine Check Exception: Machine check events logged divide error: bounds: coprocessor segment overrun: invalid TSS: segment not present: invalid opcode: alignment check: stack segment: fpu exception: simd exception: iret exception: /var/log/messages -- /usr/bin/abrt-dump-oops -xtD root 6月26 ? :: /usr/sbin/libvirtd xiong 6月26 ? :: /usr/libexec/goa-identity-service xiong 6月26 ? :: /usr/libexec/dconf-service root : pts/ :: vi text1.txt root : pts/ :: vi text1.txt root : pts/ :: vi text2.txt root : pts/ :: grep --color=auto vi [root@localhost Documents]# killall TERM vi TERM: no process found [root@localhost Documents]# killall -s KILL vi []- 已杀死 vi text1.txt []+ 已杀死 vi text2.txt []+ 已杀死 vi text1.txt
5)[root@localhost Documents]# killall -w -s 9 ping 发送信号给指定进程,等待它被杀死
[root@localhost Documents]# ps -ef | grep "ping" root : pts/ :: ping 192.168.0.18 root : pts/ :: ping -b 192.168.0.18 root : pts/ :: grep --color=auto ping [root@localhost Documents]# ping -: 未知的信号; killall -l 显示信号列表。 [root@localhost Documents]# ping []- 已杀死 ping 192.168.0.18 []+ 已杀死 ping -b 192.168.0.18 [root@localhost Documents]# ps -ef | grep "ping" root : pts/ :: grep --color=auto ping
6)[root@localhost Documents]# killall -help
[root@localhost Documents]# killall -help
Usage: killall [-Z 上下文] [-u 用户名] [ -eIgiqrvw ] [ -信号 ] 程序名...
killall -l, --list
killall -V, --version
-e,--exact require exact match for very long names
-I,--ignore-case case insensitive process name match
-g,--process-group kill process group instead of process
-y,--younger-than kill processes younger than TIME
-o,--older-than kill processes older than TIME
-i,--interactive ask for confirmation before killing
-l,--list list all known signal names
-q,--quiet don't print complaints
-r,--regexp interpret NAME as an extended regular expression
-s,--signal SIGNAL send this signal instead of SIGTERM //
-u,--user USER kill only process(es) running as USER
-v,--verbose report if the signal was successfully sent
-V,--version display version information
-w,--wait wait for processes to die
-Z,--context 正则表达式 仅杀死含有指定上下文的进程
(必须在其他参数前使用)
linux常用命令:killall 命令的更多相关文章
- ## 本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘
本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘一,磁盘管理1.显示当前目录位置 pwd2.切换目录 cd ...
- linux常用系统工作命令
1.echo命令 echo命令用于在终端输出字符串或变量提取后的值,格式为“echo [字符串 | $变量]”. 2.date命令 date命令用于显示及设置系统的时间或日期,格式为“date [选项 ...
- Linux 常用的压缩命令有 gzip 和 zip
Linux 常用的压缩命令有 gzip 和 zip,两种压缩包的结尾不同:zip 压缩的后文件是 *.zip ,而 gzip 压缩后的文件 *.gz 相应的解压缩命令则是 gunzip 和 unzip ...
- 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装
Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...
- linux常用60条命令 转
Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命 ...
- 入门学习Linux常用必会命令实例详解
Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命令.要想真正理解Linux系统, ...
- linux常用20条命令
1.cd命令 这是一个非常基本,也是大家经常需要使用的命令,它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径.如: cd /root/Docements # 切换到 ...
- LINUX常用配置及命令
一. Fedora系统配置 1. [设置网卡IP] 步骤如下: 1) 用root用户登陆,打开/etc/sysconfig/network-scripts/ifcfg-eth0文 ...
- Linux常用的基础命令总结
man 查看英文命令帮助 可以看作--help 拷贝目录的命令cp -a 包含所有 ls -a 显示所有文件包括隐藏文件 -ld ls -F 过滤目录文件(给不同类型文件结尾加上不同的符号) ...
- Java线上问题排查思路及Linux常用问题分析命令学习
前言 之前线上有过一两次OOM的问题,但是每次定位问题都有点手足无措的感觉,刚好利用星期天,以测试环境为模版来学习一下Linux常用的几个排查问题的命令. 也可以帮助自己在以后的工作中快速的排查线上问 ...
随机推荐
- 【CF891C】Envy 离线+最小生成树
[CF891C]Envy 题意:给你一个图,边有边权,每次询问给你一堆边,问你是否存在一个原图的最小生成树包含给出的所有边.n,m,q<=100000 题解:思路很好的题. 首先有一个非常重要的 ...
- Thinkphp 验证码点击刷新解决办法
HTML代码如下: <span> <input type="text" name="code" placeholder="验证码&q ...
- iOS - Block产生Memory Leaks循环引用导致的内存泄漏以及解决方案
在ARC(自动引用技术)前,Objective-c都是手动来分配释放 释放 计数内存,其过程非常复杂. ARC技术推出后,貌似世界和平了很多,但是其实ARC并不等同于Java或者C#中的垃圾回收,AR ...
- Centos6.5安装mysql 5.7
1.在官网下载安装包:https://dev.mysql.com/downloads/mysql/5.7.html#downloads mysql-5.7.10-linux-glibc2.5-x86_ ...
- Python内置函数之isinstance,issubclass
isinstance判断一个变量的类型 >>> n1 = 10>>> isinstance (n1,int)True 判断n1是否是数字类型,如果是返回True如果 ...
- TOP100summit 2017:小米唐沐等大咖精心挑选的100个年度研发案例实践
2017年,机器学习.大数据.人工智能等词汇成为软件研发行业的主流,大前端.DevOps.区块链等技术方式成为热点方向:2017年,智能硬件开始成为新的焦点,这一年更被称为智能音箱井喷的一年:2017 ...
- google kaptcha 验证码的使用
这边演示下idea+maven+servlet实现谷歌的kaptcha验证码的使用: web.xml, 这边主要是kaptcha验证器, <!DOCTYPE web-app PUBLIC &qu ...
- LightOj 1030 - Discovering Gold(dp+数学期望)
题目链接:http://lightoj.com/volume_showproblem.php?problem=1030 题意:在一个1*n 的格子里,每个格子都有相应的金币数,走到相应格子的话,就会得 ...
- King's Quest---poj1904(连通图缩点)
题目链接:http://poj.org/problem?id=1904 题意:国王有n个儿子,每个儿子喜欢ki个女孩,国王想让王子与他喜欢的人结婚,就让巫师做一个列表出来,但是国王想知道王子能和哪些女 ...
- sysbench的安装和做性能测试
sysbench的安装和做性能测试 http://imysql.cn/node/312 sysbench是一个模块化的.跨平台.多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况. ...