linux运行结束进程的命令使用 linux终止进程命令

如果你想在linux上停止某个进程,你会怎么操作?
如果命令/进程在前台运行,您可以使用 Ctrl+C 终端快捷方式,但是 , 如果进程不可见(在后台运行),您可以使用专用命令“杀死它” 。
“终止进程”是指在执行过程中停止进程,如果您知道进程 ID (PID),则可以使用 kill 命令 , 如下所示:
kill <signal> <PID>在上面的语法中,signal指的是要发送终止的终止信号 , 并且PID指的是进程的 ID 。
还有一个 killall 命令 , 我将在本文中讨论kill 和 killall 命令 。
在你开始杀死进程之前 , 你应该知道一些事情,例如有哪些终止信号可用,如何找到 PID 等 。
让我们先从信号开始 。
Linux 中的终止信号当一个进程被操作系统或用户终止时,即进程没有自行完成,它会被发送一个终端信号 。
以下是可用的终止信号:

  • SIGHUP: 1:信号挂断:当控制它的终端关闭时发送到进程 。
  • SIGINT: 2:信号中断:当用户终止进程时发送给进程的信号 。(例如 Ctrl + X)
  • SIGKILL: 9:Signal Kill:立即退出进程的信号 , 不允许它保存当前状态 。
  • SIGTERM: 15:信号终止:发送到信号以请求终止进程 。该信号可以被进程忽略 。但这是终止进程的首选方式,因为它可以在进程收到 SIGTERM 时释放资源 。
  • SIGSTOP: 19(x86、ARM)、17(Alpha)、23(MIPS)、24(PARISC):信号停止:停止进程但稍后恢复的信号 。
一般情况会使用信号 9 和 15
获取进程的PID您还需要了解要终止的进程的详细信息,使用 kill 命令,您必须提供进程的 ID (PID),您可以从进程名称中获取 PID:
pidof exact_process_name在 Linux 命令行中终止进程让我们先看看 kill 命令 , 因为您将比 killall 更多地使用它 。
使用 kill 命令该kill命令要求您知道要终止的进程的 ID,以及可选的终止信号 。
要简单地终止命令,请使用以下语法:
kill [signal] <PID>向 PID 发送终止信号是可选的,如果未提供任何信号,则kill默认发送 SIGTERM ( 15),以正常终止所述进程结束 。
我启动了sleep 命令的后台进程(它给了我一个 PID),让我们尝试使用kill命令杀死它 。
杀死这个特定的实例sleep如下所示:
$sleep 120 &[1] 125686$ kill 125686[1]+ terminatedsleep 120如果我想使用终止信号,我可以使用数值或信号本身:
$ sleep 120 &[1] 125746$ kill -SIGKILL 125746[1]+ killedsleep 120####----##-----####$ sleep 120 &[1] 125759$ kill -9 125759[1]+ killedsleep 120
? 如果 kill 命令没有指定信号,则默认使用 SIGTERM (15) 。
使用 killall 命令如果不知道某个进程的PID是多少,或者该进程有多个子进程,又想一次性杀死子进程和父进程,可以使用killall命令 。
killall [signal] <process-name>与kill命令类似 , 指定终止信号是可选的,当没有指定终止信号时,killall将发送 SIGTERM ( 15) 以优雅地关闭所述进程 。
为了演示 的使用killall,我想杀死两个正在运行的 sleep 命令 。
$ sleep 120 &[1] 18609$ sleep 2000 &[2] 18612$ killall sleep[1]-Terminatedsleep 120[2]+Terminatedsleep 2000此外,您可以使用该-e标志来查找进程名称的完全匹配 。
使用 pkill 命令命令的替代命令kill是pkill命令,它是pgrep和kill命令的“组合” 。
killall杀死所有具有匹配名称的进程 。另一方面 , pkill使用模式匹配来匹配进程并杀死它们 。


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: