ps是linux下最常用的也是非常強大的程序檢視命令
1. ps簡介
前面介紹的兩個命令都是用於檢視當前系統使用者的情況,下面就來看看程序的情況,這也是本章的主題。
要對程序進行監測和控制,首先必須要了解當前程序的情況,也就是需要檢視當前程序,而ps命令就是最基本
同時也是非常強大的程序檢視命令。使用該命令可以確定有哪些程序正在執行和執行的狀態、程序是否結束、
程序有沒有僵死、哪些程序占用了過多的資源等等。總之大部分資訊都是可以通過執行該命令得到的。
2. ps命令及其引數
ps命令最常用的還是用於監控後台程序的工作情況,因為後台程序是不和螢幕鍵盤這些標準輸入/輸出設
備進行通訊的,所以如果需要檢測其情況,便可以使用ps命令了。
該命令語法格式如下:
ps [選項]
下面對命令選項進行說明:
-e 顯示所有程序。
-f 全格式。
-h 不顯示標題。
-l 長格式。
-w 寬輸出。
a 顯示終端上的所有程序,包括其他使用者的程序。
r 只顯示正在執行的程序。
x 顯示沒有控制終端的程序。
o[+|-] k1 [,[+|-] k2 [,…]] 根據short keys、k1、k2中快捷鍵指定的多級排序順序顯示程序列表。
對於ps的不同格式都存在著預設的順序指定。這些預設順序可以被使用者的指定所覆蓋。其中「+」字元是可選
的,「-」字元是倒轉指定鍵的方向。
pids 只列出付ń 痰那榭觥8鶻 蘄d之間使用逗號分隔。該程序列表必須在命令列引數的最後乙個選項
後面緊接著給出,中間不能插入空格。比如:ps -f1,4,5。
以下介紹長命令列選項,這些選項都使用「--」開頭:
--sort x[+|-] key [,[+|-] key [,…]] 從sort keys段中選乙個多字母鍵。「+」字元是可選的,因
為預設的方向就是按數字公升序或者詞典順序。比如: ps -jax -sort=uid,-ppid,+pid。
--help 顯示幫助資訊。
--version 顯示該命令的版本資訊。
在前面的選項說明中提到了排序鍵,接下來對排序鍵作進一步說明。需要注意的是排序中使用的值是ps使
用的內部值,並非僅用於某些輸出格式的偽值。排序鍵列表見表4-3。
表4-3 排序鍵列表
短格式長格式
說 明c
cmd可執行的簡單名稱
ccmdline
完整命令列
fflags
長模式標誌
gpgrp
程序的組id
gtpgid
控制tty程序組id
jcutime
累計使用者時間
jcstime
累計系統時間
kutime
使用者時間
kstime
系統時間
mmin_flt
次要頁錯誤的數量
mmaj_flt
主要頁錯誤的數量
ncmin_flt
累計次要頁錯誤
ncmaj_flt
累計主要頁錯誤
osession
對話id
ppid
程序id
pppid
父程序id
rrss
駐留大小
rresident
駐留頁s
size
記憶體大小(千位元組)
sshare
共享頁的數量
ttty
tty次要裝置號
tstart_time
程序啟動的時間
uuid
uidu
user
使用者名稱v
vsize
總的虛擬記憶體數量(位元組)
ypriority
核心排程優先順序
3. 常用ps命令引數
前面兩節介紹的引數可能讓讀者覺得有些可怕,實際上這是乙個非常容易使用的命令,一般的使用者只
需掌握一些最常用的命令引數就可以了。
最常用的三個引數是u、a、x,下面將通過例子來說明其具體用法。
[例20] 以root身份登入系統,檢視當前程序狀況
$ ps
pid tty time command
5800 ttyp0 00:00:00 bash
5835 ttyp0 00:00:00 ps
可以看到,顯示的專案共分為四項,依次為pid(程序id)、tty(終端名稱)、time(程序執行時間)
、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時間和總時間的百分比;後者指該程序
占用的記憶體和總記憶體的百分比。
在這種情況下看到了所有控制終端的程序;但是對於其他那些沒有控制終端的程序還是沒有觀察到,所以這
時就需要使用x選項。使用x選項可以觀察到所有的程序情況。
linux ps命令使用詳解
ps 是linux 下最常用的也是非常強大的程序檢視命令 1.ps 簡介前面介紹的兩個命令都是用於檢視當前系統使用者的情況,下面就來看看程序的情況,這也是本章的主題。要對程序進行監測和控制,首先必須要了解當前程序的情況,也就是需要檢視當前程序,而 ps命令就是最基本 同時也是非常強大的程序檢視命令。...
linux ps命令使用詳解
ps是linux下最常用的也是非常強大的程序檢視命令 1.ps簡介 前面介紹的兩個命令都是用於檢視當前系統使用者的情況,下面就來看看程序的情況,這也是本章的主題。要對程序進行監測和控制,首先必須要了解當前程序的情況,也就是需要檢視當前程序,而ps命令就是最基本 同時也是非常強大的程序檢視命令。使用該...
linux ps命令使用詳解
ps是linux下最常用的也是非常強大的程序檢視命令 1.ps簡介 前面介紹的兩個命令都是用於檢視當前系統使用者的情況,下面就來看看程序的情況,這也是本章的主題。要對程序進行監測和控制,首先必須要了解當前程序的情況,也就是需要檢視當前程序,而ps命令就是最基本 同時也是非常強大的程序檢視命令。使用該...