溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

linux下殺死進(jìn)程的方法

發(fā)布時(shí)間:2021-09-09 13:01:42 來源:億速云 閱讀:172 作者:chen 欄目:系統(tǒng)運(yùn)維

本篇內(nèi)容介紹了“l(fā)inux下殺死進(jìn)程的方法”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

1. kill
作用:根據(jù)進(jìn)程號(hào)殺死進(jìn)程
用法: kill [信號(hào)代碼] 進(jìn)程ID
舉例:
[root@localhost ~]# ps auxf |grep httpd
注意:kill -9 來強(qiáng)制終止退出
舉例 [root@localhost ~]# ps aux |grep gaim
或者 [root@localhost ~]# pgrep -l gaim 5031 gaim
5031 gaim
[root@localhost ~]# kill -9 5031
特殊用法:
kill -STOP [pid]
發(fā)送SIGS***7,19,23)停止一個(gè)進(jìn)程,而并不linux殺死進(jìn)程。
kill -CONT [pid]
發(fā)送SIGCONT (19,18,25)重新開始一個(gè)停止的進(jìn)程。
kill -KILL [pid]
發(fā)送SIGKILL (9)強(qiáng)迫進(jìn)程立即停止,并且不實(shí)施清理操作。
kill -9 -1
終止你擁有的全部進(jìn)程。

2. killall
作用:通過程序的名字,直接殺死所有進(jìn)程
用法:killall 正在運(yùn)行的程序名
舉例:
[root@localhost beinan]# pgrep -l gaim 2979 gaim
[root@localhost beinan]# killall gaim
注意:該命令可以使用 -9 參數(shù)來強(qiáng)制殺死進(jìn)程

3. pkill
作用:通過程序的名字,直接殺死所有進(jìn)程
用法:#pkill 正在運(yùn)行的程序名
舉例:
[root@localhost beinan]# pgrep -l gaim 2979 gaim
[root@localhost beinan]# pkill gaim

4. xkill
作用:殺死桌面圖形界面的程序。
應(yīng)用情形實(shí)例:firefox出現(xiàn)崩潰不能退出時(shí),點(diǎn)鼠標(biāo)就能殺死firefox 。
當(dāng)xkill運(yùn)行時(shí)出來和個(gè)人腦骨的圖標(biāo),哪個(gè)圖形程序崩潰一點(diǎn)就OK了。
如果您想終止xkill ,就按右鍵取消;
調(diào)用方法:
[root@localhost ~]# xkill

◆注:
KILLALL
NAME (名稱)
killall - 以名字方式來linux殺死進(jìn)程 
SYNOPSIS (總覽)
killall [-egiqvw] [-signal] name ...
killall -l
killall -V 
DESCRIPTION (描述)
killall 發(fā)送一條信號(hào)給所有運(yùn)行任意指定命令的進(jìn)程. 如果沒有指定信號(hào)名, 則發(fā)送SIGTERM.。
信號(hào)可以以名字 (如 -HUP ) 或者數(shù)字 (如 -1 ) 的方式指定. 信號(hào) 0 (檢查進(jìn)程是否存在)只能以數(shù)字方式指定。
如果命令名包括斜杠 (/), 那么執(zhí)行該特定文件的進(jìn)程將被殺掉, 這與進(jìn)程名無關(guān)。
如果對(duì)于所列命令無進(jìn)程可殺, 那么 killall 會(huì)返回非零值. 如果對(duì)于每條命令至少殺死了一個(gè)進(jìn)程, killall 返回 0。Killall 進(jìn)程決不會(huì)殺死自己 (但是可以殺死其它 killall 進(jìn)程)。

OPTIONS (選項(xiàng))

-e對(duì)于很長(zhǎng)的名字, 要求準(zhǔn)確匹配. 如果一個(gè)命令名長(zhǎng)于 15 個(gè)字符, 則可能不能用整個(gè)名字 (溢出了). 在這種情況下, killall 會(huì)殺死所有匹配名字前 15 個(gè)字符的所有進(jìn)程. 有了 -e 選項(xiàng),這樣的記錄將忽略. 如果同時(shí)指定了 -v 選項(xiàng), killall 會(huì)針對(duì)每個(gè)忽略的記錄打印一條消息。

-g殺死屬于該進(jìn)程組的進(jìn)程. kill 信號(hào)給每個(gè)組只發(fā)送一次, 即使同一進(jìn)程組中包含多個(gè)進(jìn)程。

-i交互方式,在linux殺死進(jìn)程之前征求確認(rèn)信息。

-l列出所有已知的信號(hào)名。

-q如果沒有進(jìn)程殺死, 不會(huì)提出抱怨。

-v報(bào)告信號(hào)是否成功發(fā)送。

-V顯示版本信息。

-w等待所有殺的進(jìn)程死去. killall 會(huì)每秒檢查一次是否任何被殺的進(jìn)程仍然存在, 僅當(dāng)都死光后才返回. 注意: 如果信號(hào)被忽略或沒有起作用, 或者進(jìn)程停留在僵尸狀態(tài), killall 可能會(huì)***等待。

FILES(相關(guān)文件)
/proc proc文件系統(tǒng)的存在位置。
KNOWN bugS (已知 BUGS)
以文件方式殺死只對(duì)那些在執(zhí)行時(shí)一直打開的可執(zhí)行文件起作用, 也即, 混雜的可執(zhí)行文件不能夠通過這種方式殺死。
要警告的是輸入 killall name 可能不會(huì)在非 Linux 系統(tǒng)上產(chǎn)生預(yù)期的效果, 特別是特權(quán)用戶執(zhí)行時(shí)要小心。
在兩次掃描的間隙, 如果進(jìn)程消失了而被代之以一個(gè)有同樣 PID 的新進(jìn)程, killall -w 偵測(cè)不到。

“l(fā)inux下殺死進(jìn)程的方法”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI