linux 下查看進程可以使用的命令:
德安網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、APP開發(fā)、響應式網(wǎng)站等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)從2013年開始到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設就選創(chuàng)新互聯(lián)。
1、ps命令查找與進程相關的PID號:
2、ps a 顯示現(xiàn)行終端機下的所有程序,包括其他用戶的程序。
3、ps -A 顯示所有程序。
4、ps c 列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數(shù)或常駐服務的標示。
5、ps -e 此參數(shù)的效果和指定"A"參數(shù)相同。
6、ps e 列出程序時,顯示每個程序所使用的環(huán)境變量。
7、ps f 用ASCII字符顯示樹狀結構,表達程序間的相互關系。
8、ps -H 顯示樹狀結構,表示程序間的相互關系。
9、ps -N 顯示所有的程序,除了執(zhí)行ps指令終端機下的程序之外。
10、ps s 采用程序信號的格式顯示程序狀況。
11、ps S 列出程序時,包括已中斷的子程序資料。
12、ps -t終端機編號 指定終端機編號,并列出屬于該終端機的程序的狀況。
13、ps u 以用戶為主的格式來顯示程序狀況。
14、ps x 顯示所有程序,不以終端機來區(qū)分。
Linux ps命令,英文全拼process
status。用于顯示當前進程的狀態(tài),類似于Windows的任務管理器。運用該命令可以確定有哪些進程正在運行和運行地狀態(tài)、進程是否結束、進程有沒有僵死、哪些進程占用了過多地資源等等。
Linux系統(tǒng)中ps命令如何使用?
語法
ps [options] [--help]
參數(shù)(ps的參數(shù)比較多,在這里為大家簡單列舉幾個常用的)
-A 列出所有的進程
-w 顯示加寬可以顯示較多的資訊
-au 顯示較詳細的資訊
-aux 顯示所有包含其他使用者的行程
au(x) 輸出格式:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
USER:行程擁有者
PID:pid
%CPU:占用的CPU使用率
%MEM:占用的記憶體使用率
VSZ:占用的虛擬記憶體大小
RSS:占用的記憶體大小
TTY:終端的次要裝置號碼
STAT:該行程的狀態(tài)
①D 無法中斷的休眠狀態(tài)
②R 正在執(zhí)行中
③S 靜止狀態(tài)
④T 暫停執(zhí)行
⑤Z 不存在但暫時無法消除
⑥W 沒有足夠的記憶體分頁可分配
⑦ 高優(yōu)先序的行程
⑧N 低優(yōu)先序的行程
⑨L 有記憶體分頁分配并鎖在記憶體內(nèi)
START:行程開始時間
TIME:執(zhí)行的時間
COMMAND:所執(zhí)行的指令
Linux中的ps命令是Process Status的縮寫,顧名思義,就是查看進程狀態(tài)。ps命令用來列出系統(tǒng)中當前運行的那些進程。ps命令列出的是當前那些進程的快照,就是執(zhí)行ps命令的那個時刻的那些進程,如果想要動態(tài)的顯示進程信息,就可以使用top命令。
要對進程進行監(jiān)測和控制,首先必須要了解當前進程的情況,也就是需要查看當前進程,而 ps 命令就是最基本同時也是非常強大的進程查看命令。使用該命令可以確定有哪些進程正在運行和運行的狀態(tài)、進程是否結束、進程有沒有僵死、哪些進程占用了過多的資源等等??傊蟛糠中畔⒍际强梢酝ㄟ^執(zhí)行該命令得到的。
ps 為我們提供了進程的一次性的查看,它所提供的查看結果并不動態(tài)連續(xù)的;如果想對進程時間監(jiān)控,應該用 top 工具。
ps工具標識進程的5種狀態(tài)碼:
D 不可中斷 uninterruptible sleep (usually IO)
R 運行 runnable (on run queue)
S 中斷 sleeping
T 停止 traced or stopped
Z 僵死 a defunct (”zombie”) process
1.命令格式:
ps [參數(shù)]
2.命令功能:
用來顯示當前進程的狀態(tài)。
3.命令參數(shù):
a 顯示所有進程
-a 顯示同一終端下的所有程序
-A 顯示所有進程
c 顯示進程的真實名稱
-N 反向選擇
-e 等于“-A”
e 顯示環(huán)境變量
f 顯示程序間的關系
-H 顯示樹狀結構
r 顯示當前終端的進程
T 顯示當前終端的所有程序
u 指定用戶的所有進程
-au 顯示較詳細的資訊
-aux 顯示所有包含其他使用者的行程
-C命令 列出指定命令的狀況
--lines行數(shù) 每頁顯示的行數(shù)
--width字符數(shù) 每頁顯示的字符數(shù)
--help 顯示幫助信息
--version 顯示版本顯示
ps簡介
前面介紹的兩個命令都是用于查看當前系統(tǒng)用戶的情況,下面就來看看進程的情況,這也是本章的主題。要對進程進行監(jiān)測和控制,首先必須要了解當前進程的情況,也就是需要查看當前進程,而ps命令就是最基本同時也是非常強大的進程查看命令。使用該命令可以確定有哪些進程正在運行和運行的狀態(tài)、進程是否結束、進程有沒有僵死、哪些進程占用了過多的資源等等。總之大部分信息都是可以通過執(zhí)行該命令得到的。
ps命令及其參數(shù)
ps命令最常用的還是用于監(jiān)控后臺進程的工作情況,因為后臺進程是不和屏幕鍵盤這些標準輸入/輸出設備進行通信的,所以如果需要檢測其情況,便可以使用ps命令了。
該命令語法格式如下:
ps [選項]
下面對命令選項進行說明:
-e 顯示所有進程。
-f 全格式。
-h 不顯示標題。
-l 長格式。
-w 寬輸出。
a 顯示終端上的所有進程,包括其他用戶的進程。
r 只顯示正在運行的進程。
x 顯示沒有控制終端的進程。
O[+|-] k1 [,[+|-] k2 [,…]] 根據(jù)SHORT KEYS、k1、k2中快捷鍵指定的多級排序順序顯示進程列表。對于ps的不同格式都存在著默認的順序指定。這些默認順序可以被用戶的指定所覆蓋。其中“+”字符是可選的,“-”字符是倒轉(zhuǎn)指定鍵的方向。
pids 只列出指定進程的情況。各進程ID之間使用逗號分隔。該進程列表必須在命令行參數(shù)的最后一個選項后面緊接著給出,中間不能插入空格。比如:ps -f1,4,5。
以下介紹長命令行選項,這些選項都使用“--”開頭:
--sort X[+|-] key [,[+|-] key [,…]] 從SORT KEYS段中選一個多字母鍵?!?”字符是可選的,因為默認的方向就是按數(shù)字升序或者詞典淥承頡1熱紓?ps -jax -sort=uid,-ppid,+pid。
--help 顯示幫助信息。
--version 顯示該命令的版本信息。
在前面的選項說明中提到了排序鍵,接下來對排序鍵作進一步說明。需要注意的是排序中使用的值是ps使用的內(nèi)部值,并非僅用于某些輸出格式的偽值。排序鍵列表見表4-3。
表4-3 排序鍵列表
短格式
長格式
說 明
c
cmd
可執(zhí)行的簡單名稱
C
cmdline
完整命令行
f
flags
長模式標志
g
pgrp
進程的組ID
G
tpgid
控制tty進程組ID
j
cutime
累計用戶時間
J
cstime
累計系統(tǒng)時間
k
utime
用戶時間
K
stime
系統(tǒng)時間
m
min_flt
次要頁錯誤的數(shù)量
M
maj_flt
主要頁錯誤的數(shù)量
n
cmin_flt
累計次要頁錯誤
N
cmaj_flt
累計主要頁錯誤
o
session
對話ID
p
pid
進程ID
P
ppid
父進程ID
r
rss
駐留大小
R
resident
駐留頁
s
size
內(nèi)存大?。ㄇё止?jié))
S
share
共享頁的數(shù)量
t
tty
tty次要設備號
T
start_time
進程啟動的時間
U
uid
UID
u
user
用戶名
v
vsize
總的虛擬內(nèi)存數(shù)量(字節(jié))
y
priority
內(nèi)核調(diào)度優(yōu)先級
常用ps命令參數(shù)
前面兩節(jié)介紹的參數(shù)可能讓讀者覺得有些可怕,實際上這是一個非常容易使用的命令,一般的用戶只需掌握一些最常用的命令參數(shù)就可以了。 最常用的三個參數(shù)是u、a、x,下面將通過例子來說明其具體用法。
[例20] 以root身份登錄系統(tǒng),查看當前進程狀況
$ ps
PID TTY TIME COMMAND
5800 ttyp0 00:00:00 bash
5835 ttyp0 00:00:00 ps
可以看到,顯示的項目共分為四項,依次為PID(進程ID)、TTY(終端名稱)、TIME(進程執(zhí)行時間)、COMMAND(該進程的命令行輸入)。
可以使用u選項來查看進程所有者及其他一些詳細信息,如下所示:
$ ps u
USER PID %CPU %MEM USZ RSS TTY STAT START TIME COMMAND
test 5800 0.0 0.4 1892 1040 ttyp0 S Nov27 0:00 -bash
test 5836 0.0 0.3 2528 856 ttyp0 R Nov27 0:00 ps u
在bash進程前面有條橫線,意味著該進程便是用戶的登錄shell,所以對于一個登錄用戶來說帶短橫線的進程只有一個。還可以看到%CPU、%MEM兩個選項,前者指該進程占用的CPU時間和總時間的百分比;后者指該進程占用的內(nèi)存和總內(nèi)存的百分比。
在這種情況下看到了所有控制終端的進程;但是對于其他那些沒有控制終端的進程還是沒有觀察到,所以這時就需要使用x選項。使用x選項可以觀察到所有的進程情況。
[例21] 下面是使用x選項的例子:
$ ps x
PID TTY STAT TIME COMMAND
5800 ttyp0 S 0:00 -bash
5813 ttyp1 S 0:00 -bash
5921 ttyp0 S 0:00 man ps
5922 ttyp0 S 0:00 sh -c /usr/bin/gunzip -c /var/catman/cat1/ps.1.gz | /
5923 ttyp0 S 0:00 /usr/bin/gunzip -c /var/catman/cat1/ps.1.gz
5924 ttyp0 S 0:00 /usr/bin/less -is
5941 ttyp1 R 0:00 ps x
可以發(fā)現(xiàn)突然一下子就多出了那么多的進程。這些多出來的進程就是沒有控制終端的進程。 前面看到的所有進程都是test用戶自己的。其實還有許多其他用戶在使用著系統(tǒng),自然也就對應著其他的很多進程。如果想對這些進程有所了解,可以使用a選項來查看當前系統(tǒng)所有用戶的所有進程。經(jīng)常使用的是aux組合選項,這可以顯示最詳細的進程情況。
[例22]
$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 1136 64 ? S Nov25 0:02 init [3]
root 2 0.0 0.0 0 0 ? SW Nov25 0:00 [kflushd]
root 3 0.0 0.0 0 0 ? SW Nov25 0:03 [kupdate]
root 4 0.0 0.0 0 0 ? SW Nov25 0:00 [kpiod]
root 5 0.0 0.0 0 0 ? SW Nov25 0:00 [kswapd]
root 163 0.0 0.1 1628 332 ? S Nov25 0:02 sshd
root 173 0.0 0.0 1324 200 ? S Nov25 0:00 syslogd
root 181 0.0 0.0 1420 0 ? SW Nov25 0:00 [klogd]
daemon 191 0.0 0.1 1160 312 ? S Nov25 0:00 /usr/sbin/atd
root 201 0.0 0.1 1348 492 ? S Nov25 0:00 crond
root 212 0.0 0.0 1292 68 ? S Nov25 0:00 inetd
……
在顯示的最前面是其他用戶的進程情況,可以看到有root、daemon等用戶以及他們所啟動的進程。 在上面的例子中,介紹了ps命令最常見的一些選項和選項組合,用戶可以根據(jù)自己的需要選用。