新聞中心
Linux中的ps命令是Process Status的縮寫。ps命令用來列出系統(tǒng)中當(dāng)前運行的那些進程。ps命令列出的是當(dāng)前那些進程的快照,就是執(zhí)行ps命令的那個時刻的那些進程。

淇濱網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)成立于2013年到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。
Linux上進程有5種狀態(tài):
-
運行(正在運行或在運行隊列中等待)
-
中斷(休眠中, 受阻, 在等待某個條件的形成或接受到信號)
-
不可中斷(收到信號不喚醒和不可運行, 進程必須等待直到有中斷發(fā)生)
-
僵死(進程已終止, 但進程描述符存在, 直到父進程調(diào)用wait4()系統(tǒng)調(diào)用后釋放)
-
停止(進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號后停止運行運行)
ps工具標(biāo)識進程的5種狀態(tài)碼:
-
R 運行 runnable (on run queue)
-
S 中斷 sleeping
-
D 不可中斷 uninterruptible sleep (usually IO)
-
T 停止 traced or stopped
-
Z 僵死 a defunct (”zombie”) process
ps 使用
用法:ps [ 參數(shù) ]
ps命令有很多參數(shù),具體如下:
-
-A 顯示所有進程(等價于-e)(utility)
-
-a 顯示一個終端的所有進程,除了會話引線
-
-N 忽略選擇。
-
-d 顯示所有進程,但省略所有的會話引線(utility)
-
-x 顯示沒有控制終端的進程,同時顯示各個命令的具體路徑。dx不可合用。(utility)
-
-p pid 進程使用cpu的時間
-
-u uid or username 選擇有效的用戶id或者是用戶名
-
-g gid or groupname 顯示組的所有進程。
-
U username 顯示該用戶下的所有進程,且顯示各個命令的詳細(xì)路徑。如:ps U zhang;(utility)
-
-f 全部列出,通常和其他選項聯(lián)用。如:ps -fa or ps -fx and so on.
-
-l 長格式(有F,wchan,C 等字段)
-
-j 作業(yè)格式
-
-o 用戶自定義格式。
-
v 以虛擬存儲器格式顯示
-
s 以信號格式顯示
-
-m 顯示所有的線程
-
-H 顯示進程的層次(和其它的命令合用,如:ps -Ha)(utility)
-
e 命令之后顯示環(huán)境(如:ps -d e; ps -a e)(utility)
-
h 不顯示第一行
-
–version 顯示版本信息
-
–help 顯示幫助信息
下面給大家舉幾個在日常生活中使用較多的ps命令。
1、ps -aux
最常用的方法是ps -aux,然后再利用一個管道符號導(dǎo)向到grep去查找特定的進程,然后再對特定的進程進行操作。
列說明:
-
USER: 用戶名
-
PID: 進程ID(Process ID)
-
%CPU: 進程的cpu占用率
-
%MEM: 進程的內(nèi)存占用率
-
VSZ: 進程所使用的虛存的大?。╒irtual Size)
-
RSS: 進程使用的駐留集大小或者是實際內(nèi)存的大小,Kbytes字節(jié)。
-
TTY: 與進程關(guān)聯(lián)的終端(tty)
-
STAT: 進程的狀態(tài):進程狀態(tài)使用字符表示的(STAT的狀態(tài)碼)
-
TIME: 進程使用的總cpu時間
-
COMMAND: 正在執(zhí)行的命令行命令
2、ps -axjf
樹形顯示進程,有時候我們希望以樹形結(jié)構(gòu)顯示進程,可以使用 -axjf參數(shù)。
ps -axjf
或者可以使用另一個命令。
pstree
3、ps -ef
是用標(biāo)準(zhǔn)的格式顯示進程的、其格式如下
列說明:
-
UID: 用戶ID(User ID)
-
PID: 進程ID(Process ID)
-
PPID: 父進程的進程ID(Parent Process id)
-
STIME: 啟動時間
-
TTY: 與進程關(guān)聯(lián)的終端(tty)
-
TIME: 進程使用的總cpu時間
-
CMD: 正在執(zhí)行的命令行命令
4、ps -l
列說明:
-
F: 代表這個程序的旗標(biāo) (flag), 4 代表使用者為 super user
-
S: 睡眠 Sleeping 休眠中, 受阻, 在等待某個條件的形成或接受到信號。
-
UID: 用戶ID(User ID)
-
PID: 進程ID(Process ID)
-
PPID: 父進程的進程ID(Parent Process id)
-
C: CPU 使用的資源百分比
-
PRI: 這個是 Priority (優(yōu)先執(zhí)行序) 的縮寫,詳細(xì)后面介紹
-
NI: 這個是 Nice 值,在下一小節(jié)我們會持續(xù)介紹
-
ADDR: 這個是 kernel function,指出該程序在內(nèi)存的那個部分。如果是個 running的程序,一般就是 “-“
-
SZ: 使用掉的內(nèi)存大小
-
WCHAN: 目前這個程序是否正在運作當(dāng)中,若為 – 表示正在運作
-
TTY: 登入者的終端機位置
-
TIME: 使用掉的 CPU 時間。
-
CMD 所下達(dá)的指令為何
5、顯示所有當(dāng)前進程
(1)、ps -ax
使用 -a參數(shù),-a 代表 all。同時加上x參數(shù)會顯示沒有控制終端的進程。
(2)、ps -ax | less
這個命令的結(jié)果或許會很長。為了便于查看,可以結(jié)合less命令和管道來使用。
6、通過cpu和內(nèi)存使用來過濾進程
如果你想把結(jié)果按照 CPU 或者內(nèi)存用量來篩選,這樣你就找到哪個進程占用了你的資源。要做到這一點,我們可以使用 aux 參數(shù),來顯示全面的信息:
(1)、ps -aux | less
顯示全面信息
當(dāng)結(jié)果很長時,我們可以使用管道和less命令來篩選。
默認(rèn)的結(jié)果集是未排好序的,可以通過 –sort命令來排序。
(2)、根據(jù) CPU 使用來升序排序
$ ps -aux –sort -pcpu | less
根據(jù)cpu使用排序
(3)、根據(jù)內(nèi)存使用來升序排序
$ ps -aux –sort -pmem | less
根據(jù)內(nèi)存使用來排序
(4)、我們也可以將它們合并到一個命令,并通過管道顯示前5個結(jié)果:
ps -aux –sort -pcpu,+pmem | head -n 5
網(wǎng)頁名稱:Linuxps命令基礎(chǔ)使用方法
新聞來源:http://fisionsoft.com.cn/article/cdpphis.html


咨詢
建站咨詢
