一、ps 命令
ps 是Process Status的縮寫,用於查看進程狀態,ps 可以顯示linux系統的所有進程信息。
用法:
- ps a 顯示現行終端機下的所有程序,包括其他用戶的程序。
- ps -A 顯示所有程序。
- ps c 列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數或常駐服務的標示。
- ps -e 此參數的效果和指定"A"參數相同。
- ps e 列出程序時,顯示每個程序所使用的環境變量。
- ps f 用ASCII字符顯示樹狀結構,表達程序間的相互關係。
- ps -H 顯示樹狀結構,表示程序間的相互關係。
- ps -N 顯示所有的程序,除了執行ps指令終端機下的程序之外。
- ps s 採用程序信號的格式顯示程序狀況。
- ps S 列出程序時,包括已中斷的子程序資料。
- ps -t 指定終端機編號,並列出屬於該終端機的程序的狀況。
- ps u 以用戶爲主的格式來顯示程序狀況。
- ps x 顯示所有程序,不以終端機來區分。
例如:ps aux
二、描述
- USER 用戶名
- PID 進程的ID
- %CPU 進程佔用的CPU百分比
- %MEM 佔用內存的百分比
- VSZ 該進程使用的虛擬內存量(KB)
- RSS 該進程佔用的固定內存量(KB)(駐留中頁的數量)
- STAT 進程的狀態
- START 該進程被觸發啓動時間
- TIME 該進程實際使用CPU運行的時間
- COMMAND 所執行的指令
其中STAT狀態位常見的狀態字符有
- D //無法中斷的休眠狀態(通常 IO 的進程);
- R //正在運行或在運行隊列中;
- S //處於休眠中斷狀態;
- T //停止或被追蹤;
- Z //殭屍進程;
- < //優先級高的進程
- N //優先級較低的進程
- L //有些頁被鎖進內存;
- s //進程的領導者(在它之下有子進程);
- l //多線程,克隆線程(使用 CLONE_THREAD, 類似 NPTL pthreads);
- + //位於後臺的進程組;
三、ps 其他用法
配合grep來查看指定的進程信息。
例如:查看runmyled的進程:ps aux | grep ./runmyled.o