Linux中如何查看進程和控制進程

查看進程的命令以下:
ps命令——查看靜態的進程統計信息(通常結合選項使用 ps aux 或 ps -elf 命令)
建議使用 ps -elf 查詢,輸出的信息更詳細些,包括 PPID (對應的父進程 的PID 號)vim

Linux中如何查看進程和控制進程

以上輸出信息中,第一行爲列表標題,其中各字段的含義描述以下。ide

USER:啓動該進程的用戶帳號名稱;函數

PID:該進程在系統中的數字 ID 號,在當前系統中是惟一的;code

%CPU:CPU佔用的百分比;blog

%MEM:內存佔用的百分比;進程

VSZ:佔用虛擬內存(swap 空間)的大小;內存

RSS:佔用常駐內存(物理內存)的大小;資源

TTY:代表該進程在哪一個終端上運行。「 ?」 表示未知或不須要終端;it

STAT:顯示進程當前的狀態,S(休眠)、R(運行)、Z(僵死)、<(高優先級)、N(低優先級)、s(父進程)、+(前臺進程);class

START:啓動該進程的時間;

TIME:該進程佔用的CPU時間;

COMMAND:啓動該進程的命令的名稱;

Linux中如何查看進程和控制進程

top 命令——查看進程動態信息(以全屏交互式的界面顯示進程排名,及時跟蹤系統資源佔用狀況)

Linux中如何查看進程和控制進程

上述輸出信息中,開頭的部分顯示了系統任務、CPU佔用、內存佔用等信息,相關信息的含義以下:

系統任務(Task)信息 :total ,總進程數; running,正在運行的進程數;sleeping,休眠的進程數;stopped,停止的進程數;zombie,僵死無響應的進程數。

CPU佔用信息:us,用戶佔用;sy,內核佔用;ni,優先級調度佔用;id,空閒CPU;wa,I/O等待佔用;hi,硬件終端佔用;si,軟件中斷佔用;st,虛擬化佔用。要了解空閒的CPU百分比,主要看 %id 部分。

內存佔用(MEM)信息:total,總內存空間;free,空閒內存;used,已用內存;buff / cache,物理內存和交換內存的緩衝區總和。

交換空間(swap) 佔用:total,總交換空間;free,空閒交換空間;used,已用交換空間;avail Mem,可用物理空間。

pgrep命令——查詢進程信息(能夠指定進程的一部分名稱進行查詢,一般結合 「 - l 」 選項)

Linux中如何查看進程和控制進程

pstree命令——查看進程樹(該命令查詢的信息比較複雜,並且以前的命令徹底知足咱們查詢進程信息的須要,因此就略過,一般使用 pstree -aup 或 pstree {用戶名} 來使用)

控制進程的相關命令:

執行等待時間較長的進程時,能夠在執行命令的最後面加操做符 「&」,進程啓動後會直接放入後臺運行

Ctrl+z,能夠將當前執行的任務調入後臺並暫停執行
jobs  -l   查看當前終端中在後臺運行的進程任務,並顯示該進程的PID號。

Linux中如何查看進程和控制進程

可使用fg 任務編號(將暫停的進程從新調到前臺運行)或 bg 任務編號(將後臺暫停執行的任務恢復運行)

終止進程執行

使用 kill 命令終止進程的命令格式: kill PID號 若是沒法響應終止信號,能夠結合 -9 選項: kill -9 PID號(-9表示強制終止進程,但強制終止會致使程序運行的部分數據丟失,應謹慎使用)

使用 killall 命令終止進程的命令格式:killall 進程名(如 「killall vim」,也能夠結合 -9 選項,強制終止,選項格式與kill命令格式一致)

使用 pkill 命令終止進程:能夠根據進程的名稱,運行該進程的用戶,進程所在的終端等多種屬性終止特定的進程命令格式與pgrep格式大體相同,也能夠加 -9 選項,如:
pkill -9 -U 「用戶名」 -t 指定終端

總結進程控制相關的命令

Linux中如何查看進程和控制進程

有關進程管理的Linux相關命令總結以下:

  • kill、killall、pkill:殺掉進程;
  • ps:查看進程;
  • pstree:顯示進程狀態樹;
  • top:顯示進程;
  • renice:改變優先權;
  • nohup:用戶退出系統以後繼續工做;
  • pgrep:查找匹配條件的進程;
  • strace:跟蹤一個進程的系統調用狀況;
  • ltrace:跟蹤進程調用庫函數的狀況。
相關文章
相關標籤/搜索