Linux學習筆記:ps -ef、ps aux、kill -9

1、查看進程命令ssh

1.ps命令工具

  Linux中的ps命令是Process Status的縮寫。spa

  ps命令用來列出系統中當前運行的那些進程。blog

  ps命令列出的是當前那些進程的快照,就是執行ps命令的那個時刻的那些進程,若是想要動態的顯示進程信息,就可使用top命令。隊列

  要對進程進行監測和控制,首先必需要了解當前進程的狀況,也就是須要查看當前進程,而 ps 命令就是最基本同時也是很是強大的進程查看命令。使用該命令能夠肯定有哪些進程正在運行和運行的狀態、進程是否結束、進程有沒有僵死、哪些進程佔用了過多的資源等等。總之大部分信息都是能夠經過執行該命令獲得的。進程

Linux上進程有5種狀態:內存

  1. 運行(正在運行或在運行隊列中等待) 
  2. 中斷(休眠中, 受阻, 在等待某個條件的造成或接受到信號) 
  3. 不可中斷(收到信號不喚醒和不可運行, 進程必須等待直到有中斷髮生) 
  4. 僵死(進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用後釋放) 
  5. 中止(進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號後中止運行運行) 

 ps工具標識進程的5種狀態碼:資源

  • D 不可中斷 uninterruptible sleep (usually IO) 
  • R 運行 runnable (on run queue) 
  • S 中斷 sleeping 
  • T 中止 traced or stopped 
  • Z 僵死 a defunct (」zombie」) process 

參數:it

  • -e:顯示全部進程 等同於-A
  • f:顯示程序間的關係 ps -ef
  • -u:指定用戶 ps -u root

實例:終端

  ps常與grep組合使用,查找特定進程 ps -ef | grep ssh

  找出與cron與syslog有關的PID號碼 ps aux | grep '(cron|syslog)'

  查找指定進程個數 ps -ef | grep xxx -c 或者 ps -ef | grep -c xxx

2.top命令

  top命令提供了運行中系統的動態實時視圖。在命令提示行中輸入top:

  按q退出,按h進入幫助。

3.pstree命令

  pstree以樹狀顯示正在運行的進程。樹的根節點爲pid或init。若是指定了用戶名,進程樹將以用戶所擁有的進程做爲根節點。

2、ps -ef與ps aux的區別

  • ps -ef 是System V展現風格
  • ps aux是BSD風格

字段含義:

1.UID:用戶ID

2.PID:進程ID

3.PPID:父進程ID

4.C:CPU用於計算執行優先級的因子。數值越大,代表進程是CPU密集型運算,執行優先級會下降;數值越小,代表進程是I/O密集型運算,執行優先級會提升 

5.STIME:進程啓動的時間

6.TTY:完整的終端名稱

7.TIME:CPU時間

8.CMD:完整的啓動進程所用的命令和參數 

 字段含義:

1.USER:用戶名稱

2.PID:進程號

3.%CPU:進程佔用CPU的百分比

4.%MEM:進程佔用物理內存的百分比

5.VSZ:進程佔用的虛擬內存大小(單位:KB)

6.RSS:進程佔用的物理內存大小(單位:KB)

7.TTY:終端名稱(縮寫),若爲?,則表明此進程與終端無關,由系統啓動的 

8.STAT:進程狀態,其中S-睡眠,s-表示該進程是會話的先導進程,N-表示進程擁有比普通優先級更低的優先級,R-正在運行,D-短時間等待,Z-僵死進程,T-被跟蹤或者被中止等等

9.START:進程的啓動時間

10.TIME:CPU時間,即進程使用CPU的總時間

11.COMMAND:啓動進程所用的命令和參數,若是過長會被截斷顯示 

 注意:

1.command列若是過長,aux會截斷顯示,而-ef不會截斷;

2.若是想查看進程的CPU佔用率和內存佔用率,使用aux;

3.若是想查看進程的父進程ID和完整的command,使用-ef;

 3、kill命令

  kill 命令用於殺死進程,終止進程。

  kill -9 pid 等於 kill -s 9 pid 表示強迫進程當即中止


 END 2018-08-16 14:46:18

相關文章
相關標籤/搜索