常用進程查看工具

進程是我們學習Linux中常常接觸的概念,他是程序被運行起來的一種表現形態。

了解進程的工作狀態,管理進程的工作狀態,可以讓我們更清楚的知道,系統正在做什么,整體的進度是怎么樣的。

想要了解進程的工作狀態,我們就需要借助一些常用的工具來查看,想要對進程進行管理,我們也需要工具來實現。下面我們一起來看一看常用的查看進程工具有哪些,這些工具是如何使用的,有什么特點等等。

常用的進程查看工具有以下幾種:

pstree ps pidof pkill  pgrep top htop  

首先要說的第一個就是pstree

這個命令最常用的方法就是pstree,后面不跟任何參數。這是一個將系統中的所有進程,以進程樹形態顯示出來的工具,讓我們可以擁有一個全局的眼光,去查看系統的進程。


常用進程查看工具



這就是pstree的顯示結果,相信通過以上這張圖,能讓我們對pstree的顯示方式有一個比較直觀的了解。我們可以很容易的了解到系統一共運行了哪些進程,各個進程分別 包含了哪些線程等等。

接下來介紹一下ps這個命令的使用。

這或許是我們使用頻率最高的查看進程的命令了。

需要注意的是,ps這個命令,工作方式有點類似“snapshot”,當我們每次執行一次ps的時候,ps命令就會將系統當前的進程的運行狀態做一個靜態“snapshot”,然后顯示給我們,這樣的結果就是,有可能我們每次執行ps的結果,都是不一樣的。

按我的理解,ps是將動態的系統的進程的狀態的某個時間點的狀態,靜態的顯示給我們。

來看看ps命令常跟的選項,以及各個選項分別是什么意思:

ps支持兩種風格的顯示方式,一種是BSD風格,一種是UNIX風格。

BSD風格的選項:

ps a 顯示所有與終端相關的進程

ps x 顯示所有與終端無關的進程

ps u 顯示進程所有者的相關信息

ps f 顯示進程的父進程

ps o options的意思,即有選擇性的顯示

 

其實這些選項都是組合著用的,最常見的組合方式有以下幾種:

ps aux

ps auxf

ps axo  [pid,euid,ruid,tty,ppid,%cpu,%mem]

 

ps aux 顯示結果:

常用進程查看工具


 

ps auxf 

常用進程查看工具


ps axo  定義要顯示的選項的顯示結果:

常用進程查看工具


 

說完BSD風格,再來說說UNIX風格的顯示。

ps  -e  e既是extend的意思,擴展顯示

ps  -f  顯示完整格式

ps  -F  顯示更完整的格式

ps  -H  hierarchy,以層級結構的方式顯示

ps  -U 顯示以指定的用戶運行的程序

 

其實這些選項也是組合著用的,最常用的莫過于

ps -eFH

 

常用進程查看工具


 

關于ps的顯示結果,在其第一行的各項參數,我們有必要了解一下,這樣我們才能對進程做更深入的理解。

UID: 進程的發起者

PID:通過此前的用戶管理章節的學習,我們已經知道,計算機是靠數字來標識這些不同的進程的,進程編號存在的意義也是一樣的,人能記住進程名,但計算機可記不住,它只能記數字。

PPID: 這個多出來的P就是parent的意思。

C: 即CPU,運行在哪顆CPU核心上。

%CPU: 分配到的CPU的時間片百分比

%MEM: 實際占用的內存百分比

VSZ:虛擬內存集

RSS:常駐內存集

START:啟動時間

TIME:運行占據CPU的累計時長

COMAND: 由哪個命令運行起來

STAT:進程的運行狀態

常見的進程的運行狀態有:

RRUNING

Sinterruptable sleep 可中斷睡眠

Duninterruptable sleep 不可中斷睡眠,(一般都是在等待IO結束發生)

TSTOP

Zzombie 僵尸進程

+:前臺運行的進程

l :多線程進程

N:低優先級進程

< :高優先級進程

s:創建會話者,通常都為bash程序

 

 

pidof  命令的使用:

從字面的意思即可以看出,這是一個獲取進程的PID的命令。后邊跟的參數當然是進程名啦。

我們可以根據一個進程的名字,得知這個進程的PID是多少,并且這個程序并發運行了多少個進程。

如下圖可以看出sshd這個服務端程序發起了兩個進程,分別為54221824。

常用進程查看工具


 

再來說說pgreppkill

之所以放在一起說,是因為這兩個命令的使用幾乎一樣。

語法格式都為:

pgrep  [options]  pattern

pkill   [options]  pattern

常見選項:

pgrep | pkill

-u  uid  實際運行的用戶

-U  uid  真實生效的用戶

-t  terminal   顯示指定終端相關的進程

 

pgrep  -l  顯示出進程名

pgrep  -a  顯示完整格式的進程名

 

 

 

接下來要說的就是top命令了。top的顯示結果非常強大,信息非常豐富。

并且,之前說的pstree , ps , pidof ,pgrep ,pkill 都是靜態顯示,而top卻是動態顯示。

 

常用進程查看工具

 

信息有夠豐富!

相信剛才對顯示的參數的介紹,大家也能觸類旁通的理解top顯示的參數分別是什么意思了。

我們挑兩個重要的來說一說。

load vaerage:  這個選項顯示的是過去1分鐘,五分鐘,十五分鐘系統的負載,是一個衡量系統負載是否正常的非常重要的參數。當然啦,uptime命令也能顯示類似的信息。

CPUs)相關的參數的解析;

us:用戶空間程序占據的CPU百分比

sy: 內核空間程序占據的CPU百分比

ni: 調整NICE值占據的時間

id:空閑比例

wa:等待IO完成的時間

hi: 硬中斷,通常由磁盤這個硬件發起

si: 軟中斷,通過由軟件發起

st:被虛擬化技術偷走的時間

top工具的使用:

默認情況下,這個工具是按占據CPU的百分比排序的。

top  -d 調整刷新間隔

top  -n  顯示多當次后退出

當然啦,top雖然已經夠強大,但黑白看著未免單調,于是誕生了一個界面相對比較“華麗”的htop,參數與top大同小異。

可以看看htop的效果圖,要顯眼許多。

常用進程查看工具

 

 

當然啦,無論工具界面如何,我們都無需太過在意,畢竟linux大多數情況下都是比較單調,強調實用的,能將任何一款工具用得熟練,獲得我們想要的信息,才是最重要的。

以上是常見的進程的查看工具的使用,希望對大家有些幫助。

原創文章,作者:old_radish,如若轉載,請注明出處:http://www.www58058.com/75090

(0)
old_radishold_radish
上一篇 2017-05-08 23:06
下一篇 2017-05-09 14:33

相關推薦

  • RAID配置管理

    RAID:Redundant Arrays Indexpensive Disks     多個磁盤組合成一個陣列,來提供更好的性能、冗余     提高IO功能:         磁盤并行讀寫 &nbs…

    Linux干貨 2016-09-01
  • 馬哥教育網絡班22期+第5周課程練習

    1、顯示當前系統上root、fedora或user1用戶的默認shell;     cat /etc/passwd | grep -E '^(root|fedora|user1)\>' | awk -F …

    Linux干貨 2016-10-17
  • vim編輯器的使用

    vim          vim是一個類似于vi的文本編輯器,不過在vi的基礎上增加了很多功能,在早起vim和Emacs編輯器打的很火熱,在1999年被linuxwork文本編輯分類的優勝者,而vim屈居第二,但2000年vim贏得了salashdot beanie的最佳開放源代…

    系統運維 2016-08-09
  • linux軟鏈接與硬鏈接的區別

    硬鏈接:相于當給文件增加了一個新名 在添加鏈接時會增加鏈接數,其inode結點數不會增加 支持絕對路徑與相對路徑 硬鏈接不能對目錄來創建 不能跨分區來創建鏈接 硬鏈接鏈接到文件被刪除時,依舊可以通過鏈接文件來訪問被刪文件的數據 軟鏈接:可以支持對目錄來創建鏈接 (注,當你用rm -rf 刪除目錄的時候,目錄不會刪除,但目錄中的內容會被刪除,并且會刪除源文件)…

    Linux干貨 2013-07-15
  • Linux中/etc/passwd、/etc/shadow文件字段的含義以及用處

        今天本人學習到了兩個個Linux中非常重要的文件,它們承載著Linux用戶的相關信息,如果在賬號方面出現一些密碼相關的問題,就可以來找這兩個文件查看和分析一番。     他們分別是/etc/passwd和/etc/shadow兩個文件,他們都存放于/etc目錄中,都可以使用cat命令來查看其內容。  …

    Linux干貨 2016-01-14
  • 【yum安裝程序】Centos7.4使用yum光盤安裝httpd

    舉例:Centos7.4使用yum光盤安裝httpd

    Linux干貨 2018-03-17
欧美性久久久久