溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux系統kill具體使用方法是什么

發(fā)布時間:2022-01-26 11:58:22 來源:億速云 閱讀:212 作者:柒染 欄目:開發(fā)技術

本篇文章為大家展示了Linux系統kill具體使用方法是什么,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

概念

kill命令用來刪除執(zhí)行中的程序或工作。

kill可將指定的信息送至程序。預設的信息為SIGTERM(15),可將指定程序終止。若仍無法終止該程序,可使用SIGKILL(9)信息嘗試強制刪除程序。程序或工作的編號可利用ps指令或job指令查看。

語法、選項和參數

語法

kill (選項) (參數)

選項

 -a:當處理當前進程時,不限制命令名和進程號的對應關系;
 -l :若不加選項,則-l參數會列出全部的信息名稱;
 -p:指定kill 命令只打印相關進程的進程號,而不發(fā)送任何信號;
 -s :指定要送出的信息;
 -u:指定用戶。
 12345

參數

進程或作業(yè)識別號:指定要刪除的進程或作業(yè)。

例程

 # 列出所有信號名稱
 [root@localhost local]$ kill -l
  1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL
  5) SIGTRAP      6) SIGABRT      7) SIGBUS       8) SIGFPE
  9) SIGKILL     10) SIGUSR1     11) SIGSEGV     12) SIGUSR2
 13) SIGPIPE     14) SIGALRM     15) SIGTERM     16) SIGSTKFLT
 17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
 21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU
 25) SIGXFSZ     26) SIGVTALRM   27) SIGPROF     28) SIGWINCH
 29) SIGIO       30) SIGPWR      31) SIGSYS      34) SIGRTMIN
 35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3  38) SIGRTMIN+4
 39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
 43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12
 47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14
 51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10
 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7  58) SIGRTMAX-6
 59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2
 63) SIGRTMAX-1  64) SIGRTMAX
 123456789101112131415161718

只有第9種信號(SIGKILL)才可以無條件終止進程,其他信號進程都有權利忽略,下面是常用的信號:

 HUP     1    終端斷線
 INT     2    中斷(同 Ctrl + C)
 QUIT    3    退出(同 Ctrl + \)
 TERM   15    終止(默認kill)
 KILL    9    強制終止
 CONT   18    繼續(xù)(與STOP相反, fg/bg命令)
 STOP   19    暫停(同 Ctrl + Z)
 1234567

先用ps查找進程,然后用kill殺掉:

 [root@localhost local]$ ps -ef | grep vim
 root      3268  2884  0 16:21 pts/1    00:00:00 vim install.log
 root      3370  2822  0 16:21 pts/0    00:00:00 grep vim
 [root@localhost local]$ kill -9 3268
 [root@localhost local]$ kill -9 3268
 -bash: kill: (3268) - 沒有那個進程
 123456

kill -9、kill -15

kill 與 kill -15

系統會發(fā)送一個SIGTERM的信號給對應的程序。當程序接收到該signal后,將會發(fā)生以下的事情:

  • 程序立刻停止;

  • 當程序釋放相應資源后再停止;

  • 程序可能仍然繼續(xù)運行;

大部分程序接收到SIGTERM信號后,會先釋放自己的資源,然后在停止。但是也有程序可以在接受到信號量后,做一些其他的事情,并且這些事情是可以配置的。如果程序正在等待IO,可能就不會立馬做出相應。也就是說,SIGTERM多半是會被阻塞的、忽略。

kill -9

kill -9 pid等于kill -s 9 pid,表示強制,盡快終止一個進程。多半admin會用這個命令。

因此kill – 9表示強制殺死該進程;與SIGTERM相比,這個信號不能被捕獲或忽略,同時接收這個信號的進程在收到這個信號時不能執(zhí)行任何清理。

上述內容就是Linux系統kill具體使用方法是什么,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI