linux 下查看進程可以使用的命令:
目前創新互聯公司已為上千的企業提供了網站建設、域名、網絡空間、網站托管、服務器托管、企業網站設計、錫林郭勒盟網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協力一起成長,共同發展。
1、ps命令查找與進程相關的PID號:
2、ps a 顯示現行終端機下的所有程序,包括其他用戶的程序。
3、ps -A 顯示所有程序。
4、ps c 列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數或常駐服務的標示。
5、ps -e 此參數的效果和指定"A"參數相同。
6、ps e 列出程序時,顯示每個程序所使用的環境變量。
7、ps f 用ASCII字符顯示樹狀結構,表達程序間的相互關系。
8、ps -H 顯示樹狀結構,表示程序間的相互關系。
9、ps -N 顯示所有的程序,除了執行ps指令終端機下的程序之外。
10、ps s 采用程序信號的格式顯示程序狀況。
11、ps S 列出程序時,包括已中斷的子程序資料。
12、ps -t終端機編號 指定終端機編號,并列出屬于該終端機的程序的狀況。
13、ps u 以用戶為主的格式來顯示程序狀況。
14、ps x 顯示所有程序,不以終端機來區分。
linux中怎樣通過ps
ps命令
要對進程進行監測和控制,首先必須要 了解當前進程的情況,也就是需要查看當前進程,而ps命令就是最基本同時也是非常強大的進程查看命令.使用該命令 可以確定有哪些進程正在運行和運行的狀態、進程是否結束、進程有沒有僵尸、哪些進程占用了過多的資源等等.總之大部分信息都是可以通過執行該命令得到的.
ps命令最常用的還是用于監控后臺進程的工作情況,因為后臺進程是不和屏幕鍵盤這些標準輸入/輸出設備進行通信的,所以如果需要檢測其情況,便可以使用ps命令了.
1) ps a 顯示現行終端機下的所有程序,包括其他用戶的程序。
2)ps -A 顯示所有程序。
3)ps c 列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數或常駐服務的標示。
4)ps -e 此參數的效果和指定"A"參數相同。
5)ps e 列出程序時,顯示每個程序所使用的環境變量。
6)ps f 用ASCII字符顯示樹狀結構,表達程序間的相互關系。
7)ps -H 顯示樹狀結構,表示程序間的相互關系。
8)ps -N 顯示所有的程序,除了執行ps指令終端機下的程序之外。
9)ps s 采用程序信號的格式顯示程序狀況。
10)ps S 列出程序時,包括已中斷的子程序資料。
11)ps -t終端機編號 指定終端機編號,并列出屬于該終端機的程序的狀況。
12)ps u 以用戶為主的格式來顯示程序狀況。 ...
ps [options] [—help]
ps [-aAcdefHjlmNVwy][acefghLnrsSTuvxX][-C 指令名稱][-g 群組名稱]
[-G 群組識別碼][-p 進程識別碼][p 進程識別碼][-s 階段作業]
[-t 終端機編號][t 終端機編號][-u 用戶識別碼][-U 用戶識別碼]
[U 用戶名稱][-進程識別碼][--cols 每列字符數]
[--columns 每列字符數][--cumulative][--deselect][--forest]
[--headers][--help][-- info][--lines 顯示列數][--no-headers]
[--group 群組名稱][-Group 群組識別碼][--pid 進程識別碼]
[--rows 顯示列數][--sid 階段作業][--tty 終端機編號]
[--user 用戶名稱][--User 用戶識別碼][--version]
[--width 每列字符數]
? ?-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"參數相同
? ?-A 列出所有的行程
? ?-w 顯示加寬可以顯示較多的資訊
? -au 顯示較詳細的資訊
? -aux 顯示所有包含其他使用者的行程
linux上進程有5種狀態:?
1.?運行(正在運行或在運行隊列中等待)?
2.?中斷(休眠中,?受阻,?在等待某個條件的形成或接受到信號)?
3.?不可中斷(收到信號不喚醒和不可運行,?進程必須等待直到有中斷發生)?
4.?僵死(進程已終止,?但進程描述符存在,?直到父進程調用wait4()系統調用后釋放)?
5.?停止(進程收到SIGSTOP,?SIGSTP,?SIGTIN,?SIGTOU信號后停止運行運行)?
ps工具標識進程的5種狀態碼:?
D?不可中斷?uninterruptible?sleep?(usually?IO)?
R?運行?runnable?(on?run?queue)?
S?中斷?sleeping?
T?停止?traced?or?stopped?
Z?僵死?a?defunct?(”zombie”)?process?
1、# 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)?喚醒。
D: 無法中斷的休眠狀態 (通常 IO 的進程)
T?:該程序目前正在偵測或者是停止了
Z?:該程序應該已經終止,但是其父程序卻無法正常的終止他,造成?zombie?(疆尸)?程序的狀態
: 高優先序的行程
N: 低優先序的行程
L: 有記憶體分頁分配并鎖在記憶體內 (實時系統或捱A I/O)
START:該?process?被觸發啟動的時間
TIME?:該?process?實際使用?CPU?運作的時間
COMMAND:該程序的實際指令
2、# ps -A 顯示進程信息
3、# ps -u work //顯示work進程用戶信息
4、# ps -ef //顯示所有命令,連帶命令行
5、# ps -l //將屬于自己這次登入的pid與相關信息顯示出來
F:代表這個程序的旗標?(flag),?4?代表使用者為?super?user
S:代表這個程序的狀態?(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。
6、其他
1)可以用?|?管道和?more?連接起來分頁查看
命令:ps?-aux?|more
2)把所有進程顯示出來,并輸出到ps001.txt文件
命令:ps?-aux??ps001.txt
3)輸出指定的字段
命令:ps -o pid,ppid,pgrp,session,tpgid,comm
Linux中的ps命令是Process Status的縮寫,顧名思義,就是查看進程狀態。ps命令用來列出系統中當前運行的那些進程。ps命令列出的是當前那些進程的快照,就是執行ps命令的那個時刻的那些進程,如果想要動態的顯示進程信息,就可以使用top命令。
要對進程進行監測和控制,首先必須要了解當前進程的情況,也就是需要查看當前進程,而 ps 命令就是最基本同時也是非常強大的進程查看命令。使用該命令可以確定有哪些進程正在運行和運行的狀態、進程是否結束、進程有沒有僵死、哪些進程占用了過多的資源等等。總之大部分信息都是可以通過執行該命令得到的。
ps 為我們提供了進程的一次性的查看,它所提供的查看結果并不動態連續的;如果想對進程時間監控,應該用 top 工具。
ps工具標識進程的5種狀態碼:
D 不可中斷 uninterruptible sleep (usually IO)
R 運行 runnable (on run queue)
S 中斷 sleeping
T 停止 traced or stopped
Z 僵死 a defunct (”zombie”) process
1.命令格式:
ps [參數]
2.命令功能:
用來顯示當前進程的狀態。
3.命令參數:
a 顯示所有進程
-a 顯示同一終端下的所有程序
-A 顯示所有進程
c 顯示進程的真實名稱
-N 反向選擇
-e 等于“-A”
e 顯示環境變量
f 顯示程序間的關系
-H 顯示樹狀結構
r 顯示當前終端的進程
T 顯示當前終端的所有程序
u 指定用戶的所有進程
-au 顯示較詳細的資訊
-aux 顯示所有包含其他使用者的行程
-C命令 列出指定命令的狀況
--lines行數 每頁顯示的行數
--width字符數 每頁顯示的字符數
--help 顯示幫助信息
--version 顯示版本顯示
Linux下顯示系統進程的命令ps,最常用的有ps -ef 和ps aux。這兩個到底有什么區別呢?兩者沒太大差別,討論這個問題,要追溯到Unix系統中的兩種風格,System V風格和BSD 風格,ps aux最初用到Unix Style中,而ps -ef被用在System V Style中,兩者輸出略有不同。現在的大部分Linux系統都是可以同時使用這兩種方式的。
ps -ef 是用標準的格式顯示進程的、其格式如下:?
其中各列的內容意思如下?
UID //用戶ID、但輸出的是用戶名?
PID //進程的ID?
PPID //父進程ID?
C //進程占用CPU的百分比?
STIME //進程啟動到現在的時間?
TTY //該進程在那個終端上運行,若與終端無關,則顯示? 若為pts/0等,則表示由網絡連接主機進程。?
CMD //命令的名稱和參數
ps aux 是用BSD的格式來顯示、其格式如下:?
同ps -ef 不同的有列有?
USER //用戶名?
%CPU //進程占用的CPU百分比?
%MEM //占用內存的百分比?
VSZ //該進程使用的虛擬內存量(KB)?
RSS //該進程占用的固定內存量(KB)(駐留中頁的數量)?
STAT //進程的狀態?
START //該進程被觸發啟動時間?
TIME //該進程實際使用CPU運行的時間
其中STAT狀態位常見的狀態字符有?
D //無法中斷的休眠狀態(通常 IO 的進程);?uninterruptible sleep (usually IO)不可中斷?
R //正在運行可中在隊列中可過行的;?
S //處于休眠狀態;?
T //停止或被追蹤;?traced or stopped?
W //進入內存交換 (從內核2.6開始無效);?
X //死掉的進程 (基本很少見);?
Z //僵尸進程;??a defunct (”zombie”) process
//優先級高的進程?
N //優先級較低的進程?
L //有些頁被鎖進內存;?
s //進程的領導者(在它之下有子進程);?
l //多線程,克隆線程(使用 CLONE_THREAD, 類似 NPTL pthreads);?
+ //位于后臺的進程組;
ps -elf |grep cp(與進程有關的字符串)
whereis cp
cp: /bin/cp /usr/share/man/man1p/cp.1p.gz /usr/share/man/man1/cp.1.gz可以找到進程名的所有路徑。
分享標題:linux中樸ps命令,linux 中ps
文章路徑:http://vcdvsql.cn/article38/hshppp.html
成都網站建設公司_創新互聯,為您提供網站營銷、建站公司、網站導航、ChatGPT、云服務器、網站內鏈
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯