linux系統ps命令解析

2021-06-28 01:42:25 字數 1658 閱讀 4144

要對程序進行監測和控制,首先必須要了解當前程序的情況,也就是需要檢視當前程序,而 ps 命令就是最基本同時也是非常強大的程序檢視命令。使用該命令可以確定有哪些程序正在執行和執行的狀態、程序是否結束、程序有沒有僵死、哪些程序占用了過多 的資源等等。總之大部分資訊都是可以通過執行該命令得到的。

ps 為我們提供了程序的一次性的檢視,它所提供的檢視結果並不動態連續的;如果想對程序時間監控,應該用 top 工具。

kill 用於殺死程序。

1.ps 的引數說明

ps 提供了很多的選項引數,常用的有以下幾個:

l 長格式輸出

u 按使用者名稱和啟動時間的順序來顯示程序

j 用任務格式來顯示程序

f 用樹形格式來顯示程序

a 顯示所有使用者的所有程序(包括其它使用者)

x 顯示無控制終端的程序

r 顯示執行中的程序

ww 避免詳細引數被截斷

我們常用的選項是組合是 aux 或 lax,還有引數 f 的應用。

2.ps aux 或 lax 輸出的解釋

user 程序的屬主

pid 程序的id

ppid 父程序

%cpu 程序占用的cpu百分比

%mem 占用記憶體的百分比

ni 程序的nice值,數值大,表示較少占用cpu時間

vsz 程序虛擬大小

rss 駐留中頁的數量

tty 終端id

stat 程序狀態(有以下幾種)

d 無法中斷的休眠狀態(通常 io 的程序)

r 正在執行可中在佇列中可過行的

s 處於休眠狀態

t 停止或被追蹤;

w 進入記憶體交換(從核心2.6開始無效)

x 死掉的程序(從來沒見過)

z 殭屍程序

< 優先順序高的程序

n 優先順序較低的程序

l 有些頁被鎖進記憶體

s 程序的領導者(在它之下有子程序)

l 多程序的(使用 clone_thread, 類似 nptl pthreads)

+ 位於後台的程序組

wchan 正在等待的程序資源

start 啟動程序的時間

time 程序消耗cpu的時間

command 命令的名稱和引數

3.應用舉例

ps -aux |more    可以用 | 管道和 more 連線起來分頁檢視。

ps -aux > ps001.txt    把所有程序顯示出來,並輸出到ps001.txt檔案。

more ps001.txt    通過more 來分頁檢視。

ps -ef | grep 程序名稱    查詢指定的程序名稱也可以模糊查詢。

4.kill 終止程序

有十幾種控制程序的方法,下面是一些常用的方法:

kill -stop [pid]    傳送sigstop (17,19,23)停止乙個程序,而並不消滅這個程序。

kill -cont [pid]    傳送sigcont (19,18,25)重新開始乙個停止的程序。

kill -kill [pid]    傳送sigkill (9)強迫程序立即停止,並且不實施清理操作。

kill -9 -1    終止你擁有的全部程序。

sigkill 和 sigstop 訊號不能**捉、封鎖或者忽略,但是,其它的訊號可以。所以這是你的終極**。

Linux作業系統PS命令詳細解析

要對程序進行監測和控制,首先必須要了解當前程序的情況,也就是需要檢視當前程序,而 ps 命令就是最基本同時也是非常強大的程序檢視命令。使用該命令可以確定有哪些程序正在執行和執行的狀態 程序是否結束 程序有沒有僵死 哪些程序占用了過多的資源等等。總之大部分資訊都是可以通過執行該命令得到的。ps 為我們...

Linux作業系統PS命令詳細解析

linux作業系統ps命令詳細解析 要對系統中程序進行監測控制,用 ps 命令滿足你。bin ps ps 是顯示瞬間行程的狀態,並不動態連續 如果想對程序執行時間監控,應該用 top 工具。kill 用於殺死程序。ps 的引數說明 l 長格式輸出 u 按使用者名稱和啟動時間的順序來顯示程序 j 用任...

ps命令解析

ps命令用於報告當前系統的程序狀態。可以搭配kill指令隨時中斷 刪除不必要的程式。ps命令是最基本同時也是非常強大的程序檢視命令,使用該命令可以確定有哪些程序正在執行和執行的狀態 程序是否結束 程序有沒有僵死 哪些程序占用了過多的資源等等,總之大部分資訊都是可以通過執行該命令得到的。備註 ps是顯...