linux命令大全之ps命令詳解(查看進程結果)


ps命令為我們提供了一次性的查看進程結果,它所提供的查看結果不是動態連續的;如果想對進程時間監控,應該用top工具

1.命令參數:

a  顯示所有進程
-a 顯示同一終端下的所有程序
-A 顯示所有進程
c  顯示進程的真實名稱
-N 反向選擇
-e 等於“-A”
e  顯示環境變量
f  顯示程序間的關系
-H 顯示樹狀結構
r  顯示當前終端的進程
T  顯示當前終端的所有程序
u  指定用戶的所有進程
-au 顯示較詳細的資訊
-aux 顯示所有包含其他使用者的行程
-C<命令> 列出指定命令的狀況
--lines<行數> 每頁顯示的行數
--width<字符數> 每頁顯示的字符數
--help 顯示幫助信息
--version 顯示版本顯示

2.使用實例

實例1:顯示所有進程信息,連同命令行

命令:ps -ef

實例2:ps 與grep 常用組合用法,查找特定進程
命令:ps -ef|grep ssh

實例3:將目前屬於您自己這次登入的 PID 與相關信息列示出來
命令:ps -l

[root@test test]# ps -l
F S   UID    PID   PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
4 S     0   2422   2420  0  80   0 - 28994 do_wai pts/0    00:00:00 bash
0 R     0   2540   2422  0  80   0 - 38312 -      pts/0    00:00:00 ps

  各相關信息的意義:
F 代表這個程序的旗標 (flag), 4 代表使用者為 super user
S 代表這個程序的狀態 (STAT),關於各 STAT 的意義將在內文介紹
UID 程序被該 UID 所擁有
PID 就是這個程序的 ID !
PPID 則是其上級父程序的ID
C CPU 使用的資源百分比
PRI 這個是 Priority (優先執行序) 的縮寫
NI 這個是 Nice 值
ADDR 這個是 kernel function,指出該程序在內存的那個部分。如果是個 running的程序,一般就是 "-"
SZ 使用掉的內存大小
WCHAN 目前這個程序是否正在運作當中,若為 - 表示正在運作
TTY 登入者的終端機位置
TIME 使用掉的 CPU 時間。
CMD 所下達的指令為何
在預設的情況下, ps 僅會列出與目前所在的 bash shell 有關的 PID 而已,所以, 當我使用 ps -l 的時候,只有三個 PID。

實例3:列出目前所有的正在內存當中的程序

命令:ps aux

USER:該 process 屬於那個使用者賬號的
PID :該 process 的號碼
%CPU:該 process 使用掉的 CPU 資源百分比
%MEM:該 process 所占用的物理內存百分比
VSZ :該 process 使用掉的虛擬內存量 (Kbytes)
RSS :該 process 占用的固定的內存量 (Kbytes)
TTY :該 process 是在那個終端機上面運作,若與終端機無關,則顯示 ?,另外, tty1-tty6 是本機上面的登入者程序,若為 pts/0 等等的,則表示為由網絡連接進主機的程序。
STAT:該程序目前的狀態,主要的狀態有
R :該程序目前正在運作,或者是可被運作
S :該程序目前正在睡眠當中 (可說是 idle 狀態),但可被某些訊號 (signal) 喚醒。
T :該程序目前正在偵測或者是停止了
Z :該程序應該已經終止,但是其父程序卻無法正常的終止他,造成 zombie (疆屍) 程序的狀態
START:該 process 被觸發啟動的時間
TIME :該 process 實際使用 CPU 運作的時間
COMMAND:該程序的實際指令

實例4 找出與 cron 與 syslog 這兩個服務有關的 PID 號碼
命令:ps aux | egrep '(cron|syslog)'

其他實例:
1. 可以用 | 管道和 more 連接起來分頁查看
命令:ps -aux |more

2. 把所有進程顯示出來,並輸出到ps001.txt文件
命令:ps -aux > ps001.txt

3. 輸出指定的字段
命令:ps -o pid,ppid,pgrp,session,tpgid,comm


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM