簡述Linux中ps命令和輸出風格引數

大雄45 發表於 2022-01-20
Linux
檢視程式 ps
預設ps

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

在預設情況下,ps命令只會顯示執行在當前控制檯下,屬於當前使用者的程式,在上圖中,我們只執行了bash  以及ps命令本身。 上圖中顯示了程式的程式ID(1538,1583),它們執行在TTY終端, 以及程式已有的CPU(TIME)時間。

ps 風格以及引數

在 中使用的GNU ps命令支援3種不同型別的命令列引數。包括Unix風格的引數,BSD風格的引數,GNU風格的長引數。

Unix風格引數

在ps中每種風格的引數都很多,下面例舉一些常用的Unix風格的ps命令引數。下面表格還有很多引數沒有列出來。

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

ps –ef 引數組合命令

多數 系統管理員都有自己的一組引數,來提取有用的程式資訊。例如可用-ef 引數組合,如下圖所示:

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

在上面的列表中,輸出的資訊包括:UID列是指啟動這些程式的使用者。PID列是指程式ID。 PPID列是指:父程式ID(該程式是由另一個程式啟動的)。 C列是指程式生命週期中的CUP利用率。 STIME列是指程式啟動時的系統時間。TTY列是指程式啟動時的終端裝置。TIME列是指執行程式需要的累計CPU時間。CMD列是指啟動的程式名稱。

ps –l 長列表

如果想要獲取更多的資訊,可以採用-l引數,它會產生一個長格式的輸出,如下圖所示:

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

上面的列表中,輸出的資訊包括:F列是指核心分配給程式的系統標記。S 是指程式狀態(O是正在執行。S是休眠。R是可執行,正等待執行。Z是僵化,程式已結束但父程式已不存在,T是停止) 。 PRT列是指程式的優先順序(越大數字表越低的優先順序)。 NT列是指謙讓度值,用來參與決定優先順序。 ADDR列是指程式的記憶體地址。 SZ列是指假如程式被換出,所需的交換空間在大致大小。 WCHAN列是指程式休眠的核心函式的地址。

ps –ef|grep xx 查詢程式

命令grep是查詢, 中間 | 是管道命令,代表ps與grep同時執行。grep是一種強大的文字搜尋工具,它能使用正則搜尋檔案,並把匹配的行列印出來。下面是匹配與nginx字元有關的程式, 用grep過濾後程式資訊列名也遮蔽了。

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

下面命令加了l 長列表顯示。

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

上圖第二列值是S,代表當前nginx程式是休眠狀態,第三列uid是屬於hsr使用者。

BSD 風格引數

BSD風格引數的ps命令引數常用如下(其它很多未列出)

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

使用BSD引數時,ps命令會自動改變輸出以模仿Unix格式。例如:使用引數l輸出:

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

上圖中列輸出與Unix風格輸出大部份是一樣的。只有小部份不同包括 VSZ是指程式在記憶體中的大小,以KB單位。 RSS是指程式在未換出時佔用的實體記憶體。 STAT:代表當前程式狀態的雙字元狀態碼。

在STAT雙字元狀態碼中,第一個字元與Unix的S列值一樣。後一個字元代表如下:

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

可以看出bash命令處於休眠狀態。是一個控制程式。 Ps是執行在系統的前臺。

GNU風格長引數

GNU長引數風格的ps命令引數常用如下(其它很多未列出)

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

例如使用組合引數輸出。如下圖所示:

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

例如與其Unix風格組合引數輸出。如下圖所示:

簡述Linux中ps命令和輸出風格引數簡述Linux中ps命令和輸出風格引數

原文來自:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2853126/,如需轉載,請註明出處,否則將追究法律責任。