Ps命令
功能:用於顯示當前系統正在運行的進程動態信息。
參數:
-A:列出所有進程(等價於-e)
-a:顯示當前終端運行的所有進程。
e:列出程序時,顯示每個程序所是用戶的環境變量
u:以用戶爲主的格式顯示程序狀況
x:顯示所有進程,不以終端機來區分
l:長格式輸出
-o:控制輸出
輸出格式:
USER:用戶名
PID:進程ID
UID:用戶ID
PPID:父進程的進程ID
SID:會話ID
%CPU:進程的cpu佔用率
%MEM:進程的內存佔用率
VSZ:進程所使用的虛擬內存的大小
RSS:進程使用的時即內存大小
TTY:與進程關聯的終端
STAT:進程的狀態
START:進程運營的總cpu時間
TIME:進程運行了多長時間
COMMAND:正在執行的命令行命令
NI:優先級
PRI:進程優先級編號
WCHAN:進程正在睡眠的內核參數名稱
FLAGS:進程的數字標識
進程狀態詳解:
R:正在運行或者在運行隊列中等待
S:休眠中,在等待某個條件的形成或接受到信號
Z:僵死,進程已經終止,但進程描述符存在,直到父進程調用wait4()系統調用後釋放
D:收到信號不喚醒和不可運行,金翅鳥兒該必須等待直到由中斷髮生
T:終止,進程收到SIGSTOP,SIGSTP,SIGTIN,SIGTOU信號後停止運行
W:沒有足夠的記憶體分頁可分配
X:死進程
<:高優先級的進程
N:低優先級的進程
L:內存鎖頁,表示由記憶體分頁分配並縮在記憶體內
s:進程的領導者(在它之下由子進程)
l:多進程
+:位於後臺的進程組
ps -aux與ps aux的區別 ps -aux意爲打印用戶名爲“x”的用戶的所有進程,以及打印所有將由-a選項選擇的進程。如果用戶“x”不存在,將會被編輯器解釋爲“ps aux”,並且會打印一個警告。
當運行“ps -aux >/dev/null”,會顯示以下警告信息;
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
所以,最好直接使用“ps aux”命令。
ps aux 與ps -ef
aux會截斷command列,而-ef不會,當結合grep時就會影響結果。
ps -u 用戶
顯示指定用戶的進程
排序顯示
ps -aux --sort -pmem | head -n 10
ps -C 進程名
顯示指定的進程
ps -L PID
根據pid顯示指定的進程
pstree
顯示進程樹