Linux查看和結束進程命令詳解

來源:互聯網
上載者:User
在ubuntu中,終止一個進程或終止一個正在啟動並執行程式,一般是通過 kill 、killall、pkill、xkill 等進行。

-------------------------------------------------------------------
先看兩個例子: 

例子一:結束某個程式,如Firefox     
鍵入命令:
pkill firefox 

例子二: 結束某個進程,如find           

先用ps命令來查看該進程對應的PID。
鍵入ps,顯示如下:
PID TTY TIME COMMAND 
285 1 00:00:00 -bash 
287 3 00:00:00 -bash 
289 5 00:00:00 /sbin/mingetty tty5 
290 6 00:00:00 /sbin/mingetty tty6 
312 3 00:00:00 telnet bbs3 
341 4 00:00:00 /sbin/mingetty tty4 
345 1 00:00:00 find / -name foxy.jpg 
348 1 00:00:00 ps 

可以看到該進程對應的PID是345,現在使用kill命令來終止該進程。
鍵入:
# kill 345 

再用ps命令查看,就可以看到,find進程已經被殺掉了。
---------------------------------------------------------------------------
下面來瞭解相關命令: 

一、查看進程的命令 有ps、pstree、pgrep等:                                          

1、ps                                               
顯示進程資訊,參數可省略 
-aux    以BSD風格顯示進程 常用 
-efH    以System V風格顯示進程 
-e , -A 顯示所有進程 
a         顯示終端上所有使用者的進程 
x         顯示無終端進程 
u         顯示詳細資料 
f          樹狀顯示 
w        完整顯示資訊 
l          顯示長列表 

各列輸出欄位的含義:

USER         進程所有者
PID            進程ID 
PPID          父進程
%CPU        CPU佔用率
%MEM      記憶體佔用率
NI             進程優先順序。數值越大,佔用CPU時間越少
VSZ           進程虛擬大小
RSS            分頁檔佔用
TTY            終端ID
STAT          進程狀態
+---D    不可中斷     Uninterruptible sleep (usually IO)
+---R    正在運行,或在隊列中的進程
+---S    處於休眠狀態
+---T    停止或被追蹤
+---Z    殭屍進程
+---W    進入記憶體交換(從核心2.6開始無效)
+---X    死掉的進程

+---<    高優先順序
+---N    低優先順序
+---L    有些頁被鎖進記憶體
+---s    包含子進程
+---+    位於背景進程組;
+---l    多線程,複製線程  multi-threaded (using CLONE_THREAD, like NPTL pthreads do)

PID:進程標識符,系統為每一個進程分配一個識別碼,稱為PID。          

ps命令極為常用,其他命令還有:

2.pstree                                          
樹狀顯示進程資訊
-a 顯示完整命令及參數 
-c 重複進程分別顯示 
-c 顯示進程ID PID 
-n 按 PID 排列進程 

3.pgrep <進程名>                             
顯示進程的PID
-l 顯示進程名和進程PID 
-o 進程起始ID 
-n 進程終止ID 

二、結束進程的命令 有kill、pkill、killall、xkill等:                                      

kill [訊號代碼] <進程PID>                  

根據PID向進程發送訊號,常用來結束進程,預設訊號為 -9 
訊號代碼,可取值如下:
-l [訊號數字] 顯示、翻譯訊號代碼 
-9 , -KILL 發送 kill 訊號退出 
-6 , -ABRT 發送 abort 訊號退出 
-15 , -TERM 發送 Termination 訊號 
-1 , -HUP 掛起 
-2 , -INT 從鍵盤中斷,相當於 Ctrl+c 
-3 , -QUIT 從鍵盤退出,相當於 Ctrl+d 
-4 , -ILL 非法指令 
-11 , -SEGV 記憶體錯誤 
-13 , -PIPE 破壞管道 
-14 , -ALRM 
-STOP 停止進程,但不結束 
-CONT 繼續運行已停止的進程 
-9 -1 結束目前使用者的所有進程 

pkill <進程名>                                 
結束進程族。如果結束單個進程,請用 kill

killall <進程名>                                
killall和pkill 應用方法差不多,也是直接殺死運行中的程式;如果您想殺掉單個進程,請用kill 來殺掉。

xkill                                                
在圖形介面中點殺進程。
當xkill運行時滑鼠指標變為骷髏圖案,哪個圖形程式崩潰一點就OK了。如果您想終止xkill ,就按右鍵取消。
比如當firefox 出現崩潰不能退出時,點滑鼠就能殺死firefox 。
xkill 調用方法:
[root@localhost ~]# xkill

-------------------------------------------------------------------
先看兩個例子: 

例子一:結束某個程式,如Firefox     
鍵入命令:
pkill firefox 

例子二: 結束某個進程,如find           

先用ps命令來查看該進程對應的PID。
鍵入ps,顯示如下:
PID TTY TIME COMMAND 
285 1 00:00:00 -bash 
287 3 00:00:00 -bash 
289 5 00:00:00 /sbin/mingetty tty5 
290 6 00:00:00 /sbin/mingetty tty6 
312 3 00:00:00 telnet bbs3 
341 4 00:00:00 /sbin/mingetty tty4 
345 1 00:00:00 find / -name foxy.jpg 
348 1 00:00:00 ps 

可以看到該進程對應的PID是345,現在使用kill命令來終止該進程。
鍵入:
# kill 345 

再用ps命令查看,就可以看到,find進程已經被殺掉了。
---------------------------------------------------------------------------
下面來瞭解相關命令: 

一、查看進程的命令 有ps、pstree、pgrep等:                                          

1、ps                                               
顯示進程資訊,參數可省略 
-aux    以BSD風格顯示進程 常用 
-efH    以System V風格顯示進程 
-e , -A 顯示所有進程 
a         顯示終端上所有使用者的進程 
x         顯示無終端進程 
u         顯示詳細資料 
f          樹狀顯示 
w        完整顯示資訊 
l          顯示長列表 

各列輸出欄位的含義:

USER         進程所有者
PID            進程ID 
PPID          父進程
%CPU        CPU佔用率
%MEM      記憶體佔用率
NI             進程優先順序。數值越大,佔用CPU時間越少
VSZ           進程虛擬大小
RSS            分頁檔佔用
TTY            終端ID
STAT          進程狀態
+---D    不可中斷     Uninterruptible sleep (usually IO)
+---R    正在運行,或在隊列中的進程
+---S    處於休眠狀態
+---T    停止或被追蹤
+---Z    殭屍進程
+---W    進入記憶體交換(從核心2.6開始無效)
+---X    死掉的進程

+---<    高優先順序
+---N    低優先順序
+---L    有些頁被鎖進記憶體
+---s    包含子進程
+---+    位於背景進程組;
+---l    多線程,複製線程  multi-threaded (using CLONE_THREAD, like NPTL pthreads do)

PID:進程標識符,系統為每一個進程分配一個識別碼,稱為PID。          

ps命令極為常用,其他命令還有:

2.pstree                                          
樹狀顯示進程資訊
-a 顯示完整命令及參數 
-c 重複進程分別顯示 
-c 顯示進程ID PID 
-n 按 PID 排列進程 

3.pgrep <進程名>                             
顯示進程的PID
-l 顯示進程名和進程PID 
-o 進程起始ID 
-n 進程終止ID 

二、結束進程的命令 有kill、pkill、killall、xkill等:                                      

kill [訊號代碼] <進程PID>                  

根據PID向進程發送訊號,常用來結束進程,預設訊號為 -9 
訊號代碼,可取值如下:
-l [訊號數字] 顯示、翻譯訊號代碼 
-9 , -KILL 發送 kill 訊號退出 
-6 , -ABRT 發送 abort 訊號退出 
-15 , -TERM 發送 Termination 訊號 
-1 , -HUP 掛起 
-2 , -INT 從鍵盤中斷,相當於 Ctrl+c 
-3 , -QUIT 從鍵盤退出,相當於 Ctrl+d 
-4 , -ILL 非法指令 
-11 , -SEGV 記憶體錯誤 
-13 , -PIPE 破壞管道 
-14 , -ALRM 
-STOP 停止進程,但不結束 
-CONT 繼續運行已停止的進程 
-9 -1 結束目前使用者的所有進程 

pkill <進程名>                                 
結束進程族。如果結束單個進程,請用 kill

killall <進程名>                                
killall和pkill 應用方法差不多,也是直接殺死運行中的程式;如果您想殺掉單個進程,請用kill 來殺掉。

xkill                                                
在圖形介面中點殺進程。
當xkill運行時滑鼠指標變為骷髏圖案,哪個圖形程式崩潰一點就OK了。如果您想終止xkill ,就按右鍵取消。
比如當firefox 出現崩潰不能退出時,點滑鼠就能殺死firefox 。
xkill 調用方法:
[root@localhost ~]# xkill

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.