NAME
ps - report a snapshot of the current processes.
SYNOPSIS
ps [-aAcdefHjlmNVwy][acefghLnrsSTuvxX][-C <指令名稱>][-g <羣組名稱>]
參數說明:
-a 顯示全部終端機下執行的進程,除了階段做業領導者以外。
a 顯示現行終端機下的全部進程,包括其餘用戶的進程。
-A 顯示全部進程。
-c 顯示CLS和PRI欄位。
c 列出進程時,顯示每一個進程真正的指令名稱,而不包含路徑,參數或常駐服務的標示。
-C<指令名稱> 指定執行指令的名稱,並列出該指令的進程的情況。
-d 顯示全部進程,但不包括階段做業領導者的進程。
-e 此參數的效果和指定"A"參數相同。
e 列出進程時,顯示每一個進程所使用的環境變量。
-f 顯示UID,PPIP,C與STIME欄位。
f 用ASCII字符顯示樹狀結構,表達進程間的相互關係。
-g<羣組名稱> 此參數的效果和指定"-G"參數相同,當亦能使用階段做業領導者的名稱來指定。
g 顯示現行終端機下的全部進程,包括羣組領導者的進程。
-G<羣組識別碼> 列出屬於該羣組的進程的情況,也可以使用羣組名稱來指定。
h 不顯示標題列。
-H 顯示樹狀結構,表示進程間的相互關係。
-j或j 採用工做控制的格式顯示進程情況。
-l或l 採用詳細的格式來顯示進程情況。
L 列出欄位的相關信息。
-m或m 顯示全部的線程。
n 以數字來表示USER和WCHAN欄位。
-N 顯示全部的進程,除了執行ps指令終端機下的進程以外。
-p<進程識別碼> 指定進程識別碼,並列出該進程的情況。
p<進程識別碼> 此參數的效果和指定"-p"參數相同,只在列表格式方面稍有差別。
r 只列出現行終端機正在執行中的進程。
-s<階段做業> 指定階段做業的進程識別碼,並列出隸屬該階段做業的進程的情況。
s 採用進程信號的格式顯示進程情況。
S 列出進程時,包括已中斷的子進程資料。
-t<終端機編號> 指定終端機編號,並列出屬於該終端機的進程的情況。
t<終端機編號> 此參數的效果和指定"-t"參數相同,只在列表格式方面稍有差別。
-T 顯示現行終端機下的全部進程。
-u<用戶識別碼> 此參數的效果和指定"-U"參數相同。
u 以用戶爲主的格式來顯示進程情況。
-U<用戶識別碼> 列出屬於該用戶的進程的情況,也可以使用用戶名稱來指定。
U<用戶名稱> 列出屬於該用戶的進程的情況。
v 採用虛擬內存的格式顯示進程情況。
-o 用戶自定義格式。
-V或V 顯示版本信息。
-w或w 採用寬闊的格式來顯示進程情況。
x 顯示全部進程,不以終端機來區分。
X 採用舊式的Linux i386登錄格式顯示進程情況。
-y 配合參數"-l"使用時,不顯示F(flag)欄位,並以RSS欄位取代ADDR欄位
-<進程識別碼> 此參數的效果和指定"p"參數相同。
--cols<每列字符數> 設置每列的最大字符數。
--columns<每列字符數> 此參數的效果和指定"--cols"參數相同。
--cumulative 此參數的效果和指定"S"參數相同。
--deselect 此參數的效果和指定"-N"參數相同。
--forest 此參數的效果和指定"f"參數相同。
--headers 重複顯示標題列。
--help 在線幫助。
--info 顯示排錯信息。
--lines<顯示列數> 設置顯示畫面的列數。
--no-headers 此參數的效果和指定"h"參數相同,只在列表格式方面稍有差別。
--group<羣組名稱> 此參數的效果和指定"-G"參數相同。
--Group<羣組識別碼> 此參數的效果和指定"-G"參數相同。
--pid<進程識別碼> 此參數的效果和指定"-p"參數相同。
--rows<顯示列數> 此參數的效果和指定"--lines"參數相同。
--sid<階段做業> 此參數的效果和指定"-s"參數相同。
--tty<終端機編號> 此參數的效果和指定"-t"參數相同。
--user<用戶名稱> 此參數的效果和指定"-U"參數相同。
--User<用戶識別碼> 此參數的效果和指定"-U"參數相同。
--version 此參數的效果和指定"-V"參數相同。
--widty<每列字符數> 此參數的效果和指定"-cols"參數相同。
示例:
ps -e //顯示全部進程
ps aux //不區分終端,顯示全部進程nginx
USER: 用戶名
UID: 用戶ID
PID: 進程ID
PPID: 父進程的進程ID
SID: 會話ID
%CPU: 進程的cpu佔用率
%MEM: 進程的內存佔用率
VSZ: 進程所使用的虛存的大小
RSS: 進程使用的駐留集大小或者是實際內存的大小,Kbytes字節。
TTY: 與進程關聯的終端(tty)
STAT: 進程的狀態
START: 進程啓動時間和日期
TIME: 進程使用的總cpu時間
COMMAND: 正在執行的命令行命令spa
ps -ef //顯示全部進程的UID,PPID,C與STIME欄位 命令行
ps -u www //顯示www用戶的全部進程線程
ps axo pid,comm,pcpu //查看進程的PID、名稱以及CPU佔用率3d
ps axo pid,comm,pcpu --sort=pcpu //sort參數以pcpu爲對象排序(升序)rest
ps -efL //查看線程數code
ps -e -o "%C : %p :%z : %a"|sort -k5 -nr //查看進程並按內存使用大小排列對象
ps -C nginx //經過名字或命令搜索進程blog
ps aux --sort=-pcpu,+pmem //CPU或者內存進行排序,-降序,+升序排序
ps -f --forest -C nginx //用樹的風格顯示進程的層次關係
ps -o pid,uname,comm -C nginx //顯示一個父進程的子進程
ps -e -o pid,uname=USERNAME,pcpu=CPU_USAGE,pmem,comm //重定義標籤
ps -e -o pid,comm,etime //顯示進程運行的時間
ps -aux | grep named //查看named進程詳細信息
進程的狀態:
R 運行 正在運行或在運行隊列中等待。
S 睡眠 休眠中,受阻,在等待某個條件的造成或接受到信號。
I 空閒
Z 僵死 進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用後釋放。
D 不可中斷 收到信號不喚醒和不可運行, 進程必須等待直到有中斷髮生。
T 終止 進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號後中止運行運行。
P 等待交換頁
W 無駐留頁 沒有足夠的記憶體分頁可分配。
X 死掉的進程
< 高優先級進程
N 低優先級進程
L 鎖住的進程
s 含有子進程的進程
l 多進程
+ 位於後臺的進程