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都会被卡掉了,所以当前所有连接丢失了。需要重新连接并登录。

linux命令(7)killall的更多相关文章

  1. linux 命令——43 killall(转)

    Linux 系统中的killall命令用于杀死指定名字的进程(kill processes by name).我们可以使用kill命令杀死指定进程PID的进 程,如果要找到我们需要杀死的进程,我们还需 ...

  2. Linux命令之killall

    killall [选项] [-signal(信号)] [name] killall发送一条信号给所有允许任意指定命令的进程.如果没有指定信号名,则发送SIGTERM.信号可以是名字或数字,只有信号0( ...

  3. 每天一个linux命令(43):killall命令

    Linux系统中的killall命令用于杀死指定名字的进程(kill processes by name).我们可以使用kill命令杀死指定进程PID的进程,如果要找到我们需要杀死的进程,我们还需要在 ...

  4. 每天一个linux命令(35):killall命令

    Linux 系统中的killall命令用于杀死指定名字的进程(kill processes by name).我们可以使用kill命令杀死指定进程PID的进 程,如果要找到我们需要杀死的进程,我们还需 ...

  5. 【转】每天一个linux命令(43):killall命令

    原文网址:http://www.cnblogs.com/peida/archive/2012/12/21/2827366.html Linux系统中的killall命令用于杀死指定名字的进程(kill ...

  6. 【Linux命令】常用系统工作命令11个(echo、date、reboot、poweroff、wget、ps、top、pidof、kill、killall、pkill)

    目录 echo命令 date命令 reboot命令 poweroff命令 wget命令 ps命令 top命令 pidof命令 kill命令 killall命令 pkill命令 一.echo命令 ech ...

  7. Linux 下使用 killall 命令终止进程的 8 大用法

    Linux 的命令行提供很多命令来杀死进程.比如,你可以向 kill 命传递一个PID来杀死进程:pkill 命令使用一个正则表达式作为输入,所以和该模式匹配的进程都被杀死. 但是还有一个命令叫 ki ...

  8. Linux 命令 - killall: 通过进程名向进程发送信号

    命令格式 killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME... killall -l, --list killall -V, ...

  9. linux常用命令:killall 命令

    killall命令用进程的名字来杀死进程. 1.命令格式:    killall [ -egiqvw ] [ -signal ] [进程名称] 格式:killall -<signame> ...

随机推荐

  1. Promise 学习笔记

    所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果.从语法上说,Promise是一个对象,从它可以获取异步操作的消息.Promise提供统一的API, ...

  2. 《FreeSWITCH: VoIP实战》:SIP 模块 - mod_sofia

    SIP 模块是 FreeSWITCH 的主要模块,所以,值得拿出专门一章来讲解. 在前几章时里,你肯定见过几次 sofia 这个词,只是或许还不知道是什么意思.是这样的,Sofia-SIP 是由诺基亚 ...

  3. network Driver , TDI(Transport Driver Interface) Drivers

    https://msdn.microsoft.com/en-us/library/windows/hardware/ff565094(v=vs.85).aspx https://msdn.micros ...

  4. JavaScript-闭包注意事项

    闭包允许内层函数引用父函数中的变量,但是该变量是最终值

  5. centos7下环境配置

    1:  安装memcached 问题:error: libevent is required. If it's already installed, specify its path using –w ...

  6. mvn使用问题

    http://mirrors.ibiblio.org/maven2/org/apache/maven/archetypes/ http://blog.csdn.net/u011340807/artic ...

  7. node.js BootStrap安装

    最近想用Bootstrap开发项目,以便使用其丰富的资源: 捯饬了一下nodejs的安装和配置:windows下弄起来还是比较狗屎的,两三天下班时间才弄好: http://xiaoyaojones.b ...

  8. 关于ftp操作内容记录

    ftp问题解决: http://www.linuxdiyf.com/viewarticle.php?id=272088 IPTABLES_MODULES="ip_nat_ftp ip_con ...

  9. webconfig中配置各种数据库的连接字符串

    mysql连接串: <add name="ConnectionString" connectionString="Server=localhost;Database ...

  10. 控制台程序实现利用CRM组织服务和SqlConnection对数据库中数据的增删改查操作

    一.首先新建一个控制台程序.命名为TestCol. 二.打开App.config在里面加入,数据库和CRM连接字符串 <connectionStrings> <add name=&q ...