linux作為unix的衍生作業系統,linux內建有檢視當前程序的工具ps。這個工具能在命令列中使用。
檢視它的man手冊可以看到,ps命令能夠給出當前系統中程序的快照。它能捕獲系統在某一事件的程序狀態。如果你想不斷更新檢視的這個狀態,可以使用top命令。
ps命令支援三種使用的語法格式
unix 風格,選項可以組合在一起,並且選項前必須有「-」連字元
bsd 風格,選項可以組合在一起,但是選項前不能有「-」連字元
gnu 風格的長選項,選項前有兩個「-」連字元
我們能夠混用這幾種風格,但是可能會發生衝突。本文使用 unix 風格的ps命令。這裡有在日常生活中使用較多的ps命令的例子。
這是乙個基本的 ps 使用。在控制台中執行這個命令並檢視結果。
結果缺省會顯示4列資訊。
這些資訊在顯示時未排序。
使用 -a 引數。-a 代表 all。同時加上x引數會顯示沒有控制終端的程序。
$ ps -ax這個命令的結果或許會很長。為了便於檢視,可以結合less命令和管道來使用。
$ ps -ax | less在需要檢視特定使用者程序的情況下,我們可以使用 -u 引數。比如我們要檢視使用者』pungki』的程序,可以通過下面的命令:
$ ps -u pungki也許你希望把結果按照 cpu 或者記憶體用量來篩選,這樣你就找到哪個程序占用了你的資源。要做到這一點,我們可以使用 aux 引數,來顯示全面的資訊:
$ ps -aux | less當結果很長時,我們可以使用管道和less命令來篩選。
預設的結果集是未排好序的。可以通過 –sort命令來排序。
根據 cpu 使用來公升序排序
$ ps -aux --sort -pcpu | less根據 記憶體
使用 來公升序排序
$ ps -aux --sort -pmem | less我們也可以將它們合併到乙個命令,並通過管道
顯示前10個結果:
$ ps -aux --sort -pcpu,+pmem使用 -c 引數,後面跟你要找的程序的名字。比如想顯示乙個名為getty的程序的資訊,就可以使用下面的命令:| head -n 10
$ ps -c getty
$ ps -f -c getty如果我們想知道特定程序的執行緒,可以使用-l 引數,後面加上特定的pid。
$ ps -l 1213有時候我們希望以樹形結構顯示程序,可以使用 -axjf 引數。
$ps -axjf或者可以使用另乙個命令。
$ pstree如果想要檢視現在有誰登入了你的伺服器
。可以使用ps命令加上相關引數:
$ ps -eo pid,user,args引數 -e 顯示所有程序資訊,-o 引數控制輸出。pid,user 和 args引數顯示pid,執行應用的使用者和該應用。
能夠與-e 引數 一起使用的關鍵字是args, cmd, comm, command, fname, ucmd, ucomm, lstart, bsdstart 和 start。
系統管理員想要檢視由root使用者執行的程序和這個程序的其他相關資訊時,可以通過下面的命令:
$ ps -u root -u root u-u 引數按真實使用者id(ruid)篩選程序,它會從使用者列表中選擇真實使用者名稱或 id。真實使用者即實際建立該程序的使用者。
-u 引數用來篩選有效使用者id(euid)。
最後的u引數用來決定以針對使用者的格式輸出,由user, pid, %cpu, %mem, vsz, rss, tty, stat, start, time 和 command這幾列組成。
這裡有上面的命令的輸出結果:
ps 命令會顯示你系統當前的程序狀態,但是這個結果是靜態的。
當有一種情況,我們需要像上面第四點中提到的通過cpu和記憶體
的使用率來篩選程序,並且我們希望結果能夠每秒重新整理一次。為此,我們可以將ps命令和watch命令結合起來。
$ watch -n 1 『ps -aux --sort -pmem, -pcpu』如果輸出太長,我們也可以限制它,比如前20條,我們可以使用head命令來做到。
$ watch -n 1 『ps -aux --sort -pmem, -pcpu | head 20』這裡的動態檢視並不像top或者htop命令一樣。但是使用ps的好處是你能夠定義顯示的字段,你能夠選擇你想檢視的字段。
舉個例子,如果你只需要看名為』pungki』使用者的資訊,你可以使用下面的命令:
$ watch -n 1 『ps -aux -u pungki u --sort -pmem你也許每天都會使用ps命令來監控你的linux系統。但是事實上,你可以通過ps命令的引數來生成各種你需要的報表。, -pcpu | head 20』
ps命令的另乙個優勢是ps是各種 linux系統都預設安裝的,因此你只要用就行了。
10個重要的Linux ps命令實戰
檢視它的man手冊可以看到,ps命令能夠給出當前系統中程序的快照。它能捕獲系統在某一事件的程序狀態。如果你想不斷更新檢視的這個狀態,可以使用top命令。ps命令支援三種使用的語法格式 unix 風格,選項可以組合在一起,並且選項前必須有 連字元 bsd 風格,選項可以組合在一起,但是選項前不能有 連...
10個重要的Linux ps命令實戰
檢視它的man手冊可以看到,ps命令能夠給出當前系統中程序的快照。它能捕獲系統在某一事件的程序狀態。如果你想不斷更新檢視的這個狀態,可以使用top命令。ps命令支援三種使用的語法格式 unix 風格,選項可以組合在一起,並且選項前必須有 連字元 bsd 風格,選項可以組合在一起,但是選項前不能有 連...
linux ps 命令的檢視
ps是linux系統的程序管理工具,相當於windows中的資源管理器的一部分功能。一般來說,ps aux命令執行結果的幾個列的資訊分別是 user 程序所屬使用者 pid 程序id cpu 程序占用cpu百分比 mem 程序占用記憶體百分比 vsz 虛擬記憶體占用大小 單位 kb killobyt...