參數說明:
-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 採用虛擬內存的格式顯示進程狀況。
-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 -a 顯示當前所有進程
ps -ax -x表示顯示未控制終端的進程
$ ps -ax |less
二、ps -u username 根據用戶過濾進程
$ ps -u root
三、 通過cpu和內存使用來過濾進程
ps -aux 顯示所有進程cpu和內存使用情況
$ ps -aux|less
1.根據cpu 使用量排列 ps -aux –sort -pcpu
$ ps -aux –sort -pcpu|head -n 20
2.根據內存使用量排列 ps -aux –sort -pmem
$ ps -aux –sort -pmem |head -n 20
3.合併使用 ps -aux –sort -pcpu,-pmem
$ ps -aux –sort -pcpu,-pmem |head -n 20
四、根據進程名/PID 進行過濾 ps -C / ps -L
1.根據進程名過濾 ps -C
$ ps -f -C polkitd
-f參數來查看格式化的信息列表
2.根據PID過濾 ps -L
$ ps -f -L 648
五、樹形顯示進程 ps -axjf
$ ps -axjf|less
六、 顯示安全信息 ps -eo pid,user,args
查看現在有誰登入了你的服務器
參數 -e 顯示所有進程信息,-o 參數控制輸出。Pid,User 和 Args參數顯示PID,運行應用的用戶和該應用。
能夠與-e 參數 一起使用的關鍵字是args, cmd, comm, command, fname, ucmd, ucomm, lstart, bsdstart 和 start。
$ ps -eo pid,user,args
七、格式化輸出root用戶
$ ps -U root -u root u
-U 參數按真實用戶ID(RUID)篩選進程,它會從用戶列表中選擇真實用戶名或 ID。真實用戶即實際創建該進程的用戶。
-u 參數用來篩選有效用戶ID(EUID)。
最後的u參數用來決定以針對用戶的格式輸出,由User, PID, %CPU, %MEM, VSZ, RSS, TTY, STAT, START, TIME 和 COMMAND這幾列組成。
八、實時監督進程狀況
$ watch -n 1 ‘ps -aux –sort -pmem, -pcpu’
查看特定用戶進程狀況
$ watch -n 1 ‘ps -aux -U root –sort -pmem, -pcpu|head -20’