Linux基础命令之kill命令

    作者:课课家更新于: 2017-01-19 11:56:39

    软考,您想通过吗?一次通过才是硬道理

      相信大家在使用Linux的过程中都会遇到过某个程序出错导致系统锁死的情况,按照常规的思维我们会通过重启来重新启动系统。然而事实上在Linux中并不需要进行重启就能够完成出错程序的关闭操作。在Linux中我们可以通过使用"kill"命令来强制终结它。那么到底它的格式语法和作用又是什么呢?在本文中课课家笔者就为大家一一道来。

    Linux基础命令之kill命令_考试认证_Linux认证_Linux_课课家

     


     

      Kill命令和信号

      通常情况下当我们执行一个"kill"命令时实际上发送了一个信号给系统让它去终结不正常的应用。在linux系统中总共有60个我们可以使用的信号,但是基本上我们只需要知道SIGTERM(15)和SIGKILL(9)就可以了。一般来说我们可以用以下这个命令来查看所有信号的列表:

      ● kill-l

    kill-l

      ·SIGTERM - 信号表示的是请求一个进程停止运行,通常这个信号是可以被忽略的。进程可以用一段时间来正常关闭,而一个程序的正常关闭一般需要一段时间来保存进度并释放资源,换句话说它不是强制停止。

      ·SIGKILL - 信号表示的是强制进程立刻停止运行,程序不能忽略此信号,而未保存的进度将会丢失。

      "kill"命令的语法是:

      ● kill [信号或选项] PID(s)

      一般来说其默认信号(当没有指定的时候)是SIGTERM。当它不起作用时我们可以使用下面的命令来强制kill掉一个进程:

      ● kill SIGKILL PID或者 kill -9 PID

      这里"-9"代表着SIGKILL信号。如果不知道应用的PID的话我们仅需要运行以下这个命令:

      ● ps ux

      通常这个命令会显示所有正在运行的应用还有应用的PID。

    ps ux

      举个例子,比如我们要kill掉Chrome则可以运行以下命令:

      ● kill -9 3629

      当然我们也可以在同一时间kill多个进程,具体命令如下所示:

      ● kill -9 PID1 PID2 PID3

      


     

      PKill

      "pkill"命令允许我们使用扩展的正则表达式和其它匹配方式。我们现在可以使用应用的进程名kill掉它们而不是使用PID,比如我们如果要kill掉Firefox浏览器只需要运行命令:

      ● pkill firefox

      使用正则表达式匹配的话我们可以输入进程名的部分字符,具体比如:

      ● pkill fire

      另外为了避免kill掉错误的进程,我们应该用一下"pgrep -l [进程名]"列表来匹配进程名称,具体如下图所示:

    pgrep -l [进程名]

      


     

      Killall

      killall同样使用进程名替代PID,并且它会kill掉所有的同名进程。比如正在运行多个Firefox浏览器,我们可以通过使用这个命令把它们全部kill掉:

      ● killall firefox

      另外在Gnome中我们也可以使用这个命令来重启Nautilus:

      ● killall nautilus

     


     

      以上就是Linux基础命令之kill命令的简单介绍。

      本次的Linux基础命令之kill命令的讲解到此就暂告一段落,如果以后有什么相关的内容继续进行补充或者修改的话,笔者会在此继续进行相关的内容的补充或者修改的工作,同时也欢迎大家对本次的讲解提出自己的建议和补充。最后笔者希望本次的讲解对大家学习Linux和Linux认证能够起到一定的帮助作用!

Linux 更多推荐

课课家教育

未登录

1