0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux中的kill 和 killall 命令介绍

dyquk4xk2p3d 来源:良许Linux 作者:良许Linux 2022-10-09 10:27 次阅读

我想干掉Liunx某个进程怎么搞?

如果进程在前台运行,你可以使用 Ctrl+C 终端快捷方式。但是,如果进程不可见(在后台运行),你可以使用专用命令杀死它。

终止进程是指在执行过程中停止进程。如果你知道进程ID(PID),则可以使用 kill 命令,如下所示:


>kill

在上面的语法中,signal指的是要发送终止的终止信号,并且PID指的是进程的 ID。

还有一个 killall 命令,我将在本文中讨论kill 和 killall 命令。

Linux 中的终止信号

当一个进程被操作系统或用户终止时,即进程没有自行完成,它会被发送一个终端信号。

以下是可用的终止信号:

信号 数值 描述
SIGHUP 1 信号挂断:当控制它的终端关闭时发送到进程。
SIGINT 2 信号中断:当用户终止进程时发送给进程的信号.(例如 Ctrl + X)
SIGKILL 9 Signal Kill:立即退出进程的信号,不允许它保存当前状态。
SIGTERM 15 信号终止:发送到信号以请求终止进程。该信号可以被进程忽略。但这是终止进程的首选方式,因为它可以在进程收到 SIGTERM 时释放资源。
SIGSTOP 19 (for x86, ARM and most others) 17 (for Alpha) 23 (for MIPS) 24 (for PARISC) 停止信号:停止进程的信号,但稍后将恢复。

常用的信号 9 和 15

获取进程的PID

你还需要了解要终止的进程的详细信息。使用 kill 命令,你必须提供进程的 ID(PID)。你可以从进程名称中获取 PID


>pidofexact_process_name

比如获取java进程的进程号


>pidofjava 80751032

在 Linux 命令行中终止进程

使用 kill 命令

该kill命令要求你知道要终止的进程的 ID,以及可选的终止信号。

要简单地终止命令,请使用以下语法:


kill[signal]

向 PID 发送终止信号是可选的,如果未提供任何信号,则kill默认发送 SIGTERM (15),以正常终止所述进程结束。

我启动了sleep 命令的后台进程(它给了我一个 PID)。我们使用kill命令杀死它。

杀死这个特定的实例sleep如下所示:


$sleep120& [1]125686 $kill125686 [1]+terminatedsleep120

如果我想使用终止信号,我可以使用数值或信号本身:


$sleep120& [1]125746 $kill-SIGKILL125746 [1]+killedsleep120 $sleep120& [1]125759 $kill-9125759 [1]+killedsleep120

如果 kill 命令没有指定信号,则默认使用 SIGTERM (15)。

使用 killall 命令

如果不知道某个进程的PID是多少,或者该进程有多个子进程,又想一次性杀死子进程和父进程,可以使用killall命令。


killall[signal]

与kill命令类似,指定终止信号是可选的。当没有指定终止信号时,killall将发送 SIGTERM (15) 以优雅地关闭所述进程。

为了演示killall的使用,我将杀死两个正在运行的 sleep 命令。


$sleep120& [1]112351 $sleep2000& [2]112362 $killallsleep [1]-Terminatedsleep120 [2]+Terminatedsleep2000

此外,你可以使用该-e标志来查找进程名称的完全匹配。

使用 pkill 命令

命令的替代命令kill是pkill命令。它是pgrep和kill命令的组合。

killall杀死所有具有匹配名称的进程。另一方面,pkill使用模式匹配来匹配进程并杀死它们。


pkill[options]pattern

命令中可用的一些有用选项pkill如下:

-u: 特定所有者拥有的进程

-x: 完全匹配模式的进程

-signal: 指定终止信号(默认为 SIGTERM)

结束nginx进程

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    10992

    浏览量

    206745
  • 操作系统
    +关注

    关注

    37

    文章

    6290

    浏览量

    121901
  • PID
    PID
    +关注

    关注

    35

    文章

    1446

    浏览量

    83829

原文标题:你是怎么在 Linux 干掉进程的?

文章出处:【微信号:良许Linux,微信公众号:良许Linux】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何使用Linux kill命令

    Linux是一个很棒操作系统,但是还不完美。有时,某些应用程序可能会开始出现异常行为,并变得无响应或开始消耗大量系统资源。
    发表于 12-07 17:14 903次阅读

    介绍一些实用的Linux命令

    作为一名软件开发人员,掌握 Linux 命令是必不可少的技能。即使你使用 Windows 或 macOS,你总会遇到需要使用 Linux 命令的场合。例如,大多数 Docker 镜像都
    发表于 08-01 16:12 189次阅读
    <b class='flag-5'>介绍</b>一些实用的<b class='flag-5'>Linux</b><b class='flag-5'>命令</b>

    为什么不建议用kill-9关闭程序?

    相信不少Linux运维小伙伴在实际运维中经常会用到kill -9 进程ID 这个命令来干掉程序。实际真的合理吗,今天就让我们一起来看看为什么技术牛人都不建议用kill -9关闭程序,看
    的头像 发表于 12-04 09:39 421次阅读
    为什么不建议用<b class='flag-5'>kill</b>-9关闭程序?

    如何在Linux中使用htop命令

    本文介绍如何在 Linux 中使用 htop 命令
    的头像 发表于 12-04 14:45 554次阅读
    如何在<b class='flag-5'>Linux</b>中使用htop<b class='flag-5'>命令</b>

    嵌入式学习指引--Linux下常用系统命令

    命令,按照它们在系统的作用分成下面六个部分一一介绍。◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、e
    发表于 10-19 11:12

    嵌入式学习指引--Linux下常用系统命令详解

    命令,按照它们在系统的作用分成下面六个部分一一介绍。◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、e
    发表于 08-21 09:40

    linux运维命令大全

    是对Linux高端运维实用命令的简单汇总:1. bash常用任务管理命令&,Ctrl-Z,Ctrl-C,jobs,fg,bg,kill等2. 基本的文件管理
    发表于 03-15 16:36

    Linux重启命令介绍

    下面介绍Linux 操作系统重启和关闭相关的命令:shutdown、reboot、init、halt、poweroff、systemctl,你可以根据需要来选择适合的
    发表于 10-13 15:33

    kill结构的参数RFU和RECOM是什么意思

    我尝试杀死一个 TAG,我使用不同的配置但没有得到不同的答案。我相信如果杀死一个标签,我的读者就不可能识别出她,但在我使用 kill 命令后,我的标签仍然被我的读者读取。我想了解kill 结构
    发表于 12-23 06:22

    以多种方式使用”kill命令终结应用

    无论你使用哪种操作系统,你一定会遇到某个行为失常的应用,它把自己锁死并拒绝关闭。在Linux(还有Mac),你可以用一个”kill命令强制终结它。在这个教程中,我们将展示给你多种方式使用”k
    的头像 发表于 04-20 16:36 4774次阅读
    以多种方式使用”<b class='flag-5'>kill</b>”<b class='flag-5'>命令</b>终结应用

    Linux关于系统状态的命令简单介绍

    Linux 常用命令中,有些命令可以用于查看系统的状态,通过了解系统当前的状态,能够帮助我们更好地维护系统或定位问题。本文就简单介绍一下这些命令
    的头像 发表于 02-02 17:50 2054次阅读
    <b class='flag-5'>Linux</b>关于系统状态的<b class='flag-5'>命令</b>简单<b class='flag-5'>介绍</b>

    如何用Linux命令KILL掉一个进程?

    杀死一个没有响应的进程的第一个步骤是定位这个进程。我用来定位进程的命令有两个:top 和 ps 命令。top 是每个系统管理员都知道的工具,用 top 命令,你能够知道到所有当前正在运行的进程有哪些。
    发表于 04-26 14:30 1181次阅读

    Centos linux系统中杀死进程如何实现

    结束进程有很多方法,一般是killkillallkill等, 简单地使用kill命令是最安全的。
    发表于 04-22 08:59 1199次阅读

    Linux使用kill命令的注意事项

     Linux系统下有一个直接终止进程的命令,这个命令的代码也是非常霸气,直接就是英文的kill。既然这个命令这么有“杀气”,为了防止“误伤”
    发表于 07-16 14:30 607次阅读

    常用Linux命令介绍

    linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,
    的头像 发表于 02-09 14:31 837次阅读