歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux管理 >> Linux問題解決

Linux操作系統下殺死進程命令的方法

1. kill

作用:根據進程號殺死進程

用法: kill [信號代碼] 進程ID

舉例:

[root@localhost ~]# ps auxf |grep httpd

注意:kill -9 來強制終止退出

舉例

[root@localhost ~]# ps aux |grep gaim

或者

[root@localhost ~]# pgrep -l gaim 5031 gaim

5031 gaim

[root@localhost ~]# kill -9 5031

特殊用法:

kill -STOP [pid]

發送SIGSTOP (17,19,23)停止一個進程,而並不消滅這個進程。

kill -CONT [pid]

發送SIGCONT (19,18,25)重新開始一個停止的進程。

kill -KILL [pid]

發送SIGKILL (9)強迫進程立即停止,並且不實施清理操作。

kill -9 -1

終止你擁有的全部進程。

2. killall

作用:通過程序的名字,直接殺死所有進程

用法:killall 正在運行的程序名

舉例:

[root@localhost beinan]# pgrep -l gaim 2979 gaim

[root@localhost beinan]# killall gaim

注意:該命令可以使用 -9 參數來強制殺死進程

3. pkill

作用:通過程序的名字,直接殺死所有進程 

用法:#pkill 正在運行的程序名

舉例:

[root@localhost beinan]# pgrep -l gaim 2979 gaim

[root@localhost beinan]# pkill gaim

4. xkill

作用:殺死桌面圖形界面的程序。

應用情形實例:firefox出現崩潰不能退出時,點鼠標就能殺死firefox 。

當xkill運行時出來和個人腦骨的圖標,哪個圖形程序崩潰一點就OK了。

如果您想終止xkill ,就按右鍵取消;

調用方法:

[root@localhost ~]# xkill

◆編者注:

KILLALL(Section: User (1)/Updated: 1999年9月7日)

-----------------------------------------------

NAME (名稱)

killall - 以名字方式來殺死進程  

SYNOPSIS (總覽)

killall [-egiqvw] [-signal] name ...

killall -l

killall -V  

DESCRIPTION (描述)

killall 發送一條信號給所有運行任意指定命令的進程. 如果沒有指定信號名, 則發送SIGTERM.。

信號可以以名字 (如 -HUP ) 或者數字 (如 -1 ) 的方式指定. 信號 0 (檢查進程是否存在)只能以數字方式指定。

如果命令名包括斜槓 (/), 那麼執行該特定文件的進程將被殺掉, 這與進程名無關。

如果對於所列命令無進程可殺, 那麼 killall 會返回非零值. 如果對於每條命令至少殺死了一個進程, killall 返回 0。Killall 進程決不會殺死自己 (但是可以殺死其它 killall 進程)。 

OPTIONS (選項)

-e

對於很長的名字, 要求准確匹配. 如果一個命令名長於 15 個字符, 則可能不能用整個名字 (溢出了). 在這種情況下, killall 會殺死所有匹配名字前 15 個字符的所有進程. 有了 -e 選項,這樣的記錄將忽略. 如果同時指定了 -v 選項, killall 會針對每個忽略的記錄打印一條消息。

-g

殺死屬於該進程組的進程. kill 信號給每個組只發送一次, 即使同一進程組中包含多個進程。

-i

交互方式,在殺死進程之前征求確認信息。

-l

列出所有已知的信號名。

-q

如果沒有進程殺死, 不會提出抱怨。

-v

報告信號是否成功發送。

-V

顯示版本信息。

-w

等待所有殺的進程死去. killall 會每秒檢查一次是否任何被殺的進程仍然存在, 僅當都死光後才返回. 注意: 如果信號被忽略或沒有起作用, 或者進程停留在僵屍狀態, killall 可能會永久等待。

FILES(相關文件)

/proc proc文件系統的存在位置。

KNOWN bugS (已知 BUGS)

以文件方式殺死只對那些在執行時一直打開的可執行文件起作用, 也即, 混雜的可執行文件不能夠通過這種方式殺死。

要警告的是輸入 killall name 可能不會在非 Linux 系統上產生預期的效果, 特別是特權用戶執行時要小心。

在兩次掃描的間隙, 如果進程消失了而被代之以一個有同樣 PID 的新進程, killall -w 偵測不到。

Copyright © Linux教程網 All Rights Reserved