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)停止一個程序,而并不Linux作業系統殺死程序。
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]# pkill gaim
4. xkill
作用:殺死桌面圖形界面的程式。
應用情形執行個體:firefox出現崩潰不能退出時,點滑鼠就能殺死firefox 。
當xkill運作時出來和個人腦骨的圖示,哪個圖形程式崩潰一點就OK了。
如果您想終止xkill ,就按右鍵取消;
調用方法:
[root@localhost ~]# xkill
5.killalll
NAME (名稱)
killall - 以名字方式來Linux作業系統殺死程序
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互動方式,在Linux作業系統殺死程序之前征求确認資訊。
-l列出所有已知的信号名。
-q如果沒有程序殺死, 不會提出抱怨。
-v報告信号是否成功發送。
-V顯示版本資訊。
-w等待所有殺的程序死去。 killall 會每秒檢查一次是否任何被殺的程序仍然存在, 僅當都雷射後才傳回。 注意: 如果信号被忽略或沒有起作用, 或者程序停留在僵屍狀态, killall 可能會永久等待。
FILES(相關檔案)
/proc proc檔案系統的存在位置。
KNOWN bugS (已知 BUGS)
以檔案方式殺死隻對那些在執行時一直打開的可執行檔案起作用, 也即, 混雜的可執行檔案不能夠通過這種方式殺死。
要警告的是輸入 killall name 可能不會在非 Linux作業系統上産生預期的效果, 特别是特權使用者執行時要小心。
在兩次掃描的間隙, 如果程序消失了而被代之以一個有同樣 PID 的新程序, killall -w 偵測不到。