天天看點

kill、killall、pkill指令差別1.用kill來殺死某一個程序2.用pkill踢出某個終端3.用killall殺死一類程序

1.用kill來殺死某一個程序

pid是程序号,可以用 ps 指令查出

kill pid  // 預設參數下,kill 發送SIGTERM(15)信号給程序,告訴程序,你需要被關閉,請自行停止運作并退出

kill -Signal pid
           

signal是發送給程序的信号

kill、killall、pkill指令差別1.用kill來殺死某一個程式2.用pkill踢出某個終端3.用killall殺死一類程式

一般常用的kill信号有

1     表示從終端上發出的結束信号
      2     表示從鍵盤上發出的終端信号(即Ctrl+c)
      3     表示從鍵盤上發出的退出信号(即Ctrl+\)
      8     表示浮點異常,比如被0除
      9     表示結束接受信号的程序,也就是強行殺死程序
     15     kill指令預設的終止信号
     17     子程序終止或結束的信号
     19     從鍵盤來執行的信号
           

其中 -9 表示“無條件終止”,用來強制殺死該程序;與SIGTERM相比,這個信号不能被捕獲或忽略,同時接收這個信号的程序在收到這個信号時不能執行任何清理。

一般可以用 kill -9 pid 來殺死僵屍程序。

2.用pkill踢出某個終端

pkill,加選項-9,加終端号或者某個程序名,表示踢出該終端

比如

踢出遠端登入終端pts/0:pkill -9 pts/0

踢出gdb程序:pkill gdb

3.用killall殺死一類程序

格式:killall -9 服務名

比如:killall -9 httpd