Linux中查看進(jìn)程

一、常用命令總結(jié)

   ps -l   列出與本次登錄有關(guān)的進(jìn)程信息;
   ps -aux   查詢內(nèi)存中進(jìn)程信息;
   ps -aux | grep ***   查詢***進(jìn)程的詳細(xì)信息;
   top   查看內(nèi)存中進(jìn)程的動(dòng)態(tài)信息;
   kill -9 pid   殺死進(jìn)程。

二、進(jìn)程簡(jiǎn)述及查看方式

進(jìn)程是運(yùn)行的程序在系統(tǒng)中的存在形式,通過查看進(jìn)程的狀態(tài)信息,我們可以了解進(jìn)程占用的系統(tǒng)資源情況,對(duì)系統(tǒng)的運(yùn)行狀態(tài)進(jìn)行分析、調(diào)整,從而讓系統(tǒng)保持在一個(gè)平穩(wěn)的狀態(tài)下運(yùn)行。
Linux中查看進(jìn)程信息的基本命令有ps、top,其中ps(Process Status)查看的是進(jìn)程信息的一個(gè)快照,顯示的我們執(zhí)行ps這個(gè)命令時(shí)進(jìn)程的信息,top顯示的是進(jìn)程的動(dòng)態(tài)信息,使用這個(gè)命令會(huì)看到進(jìn)程信息的動(dòng)態(tài)變化。

三、進(jìn)程信息的查看

2.1 列出與 本次登錄系統(tǒng) 有關(guān)的進(jìn)程信息

      ps  ( ps -l, 列出的是詳細(xì)信息 ) 

F 代表這個(gè)程序的旗標(biāo) (flag), 4 代表使用者為 superuser;
S 代表這個(gè)程序的狀態(tài) (STAT);
( 常見的進(jìn)程的 STAT 如下:
R 運(yùn)行 Runnable (on run queue) 正在運(yùn)行或在運(yùn)行隊(duì)列中等待,
S 睡眠 Sleeping 休眠中, 受阻, 在等待某個(gè)條件的形成或接受到信號(hào),
I 空閑 Idle ,
Z 僵死 Zombie(a defunct process) 進(jìn)程已終止, 但進(jìn)程描述符存在, 直到父進(jìn)程調(diào)用wait4()系統(tǒng)調(diào)用后釋放,
D 不可中斷 Uninterruptible sleep (ususally IO) 收到信號(hào)不喚醒和不可運(yùn)行, 進(jìn)程必須等待直到有中斷發(fā)生,
T 終止 Terminate 進(jìn)程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號(hào)后停止運(yùn)行運(yùn)行,
P 等待交換頁 ,
W 無駐留頁 has no resident pages 沒有足夠的記憶體分頁可分配,
X 死掉的進(jìn)程 ,
< 高優(yōu)先級(jí)進(jìn)程 高優(yōu)先序的進(jìn)程 ,
N 低優(yōu)先 級(jí)進(jìn)程 低優(yōu)先序的進(jìn)程 ,
L 內(nèi)存鎖頁 Lock 有記憶體分頁分配并縮在記憶體內(nèi) ,
s 進(jìn)程的領(lǐng)導(dǎo)者(在它之下有子進(jìn)程),
l 多進(jìn)程的(使用 CLONE_THREAD, 類似 NPTL pthreads)。 )

2.2 列出在內(nèi)存中運(yùn)行的 全部進(jìn)程信息

  ps  -aux ( ps -aux | grep ***,  列出 *** 進(jìn)程的詳細(xì)信息) 

USER :進(jìn)程的所屬用戶,
PID :進(jìn)程的進(jìn)程ID號(hào),
%CPU :進(jìn)程占用的 CPU資源 百分比,
%MEM :進(jìn)程占用的 物理內(nèi)存 百分比,
VSZ :進(jìn)程使用掉的虛擬內(nèi)存量 (Kbytes) ,
RSS :進(jìn)程占用的固定的內(nèi)存量 (Kbytes) ,
TTY :與進(jìn)程相關(guān)聯(lián)的終端(tty),?代表無關(guān),tty1-tty6是本機(jī)上面的登入者程序,pts/0表示為由網(wǎng)絡(luò)連接進(jìn)主機(jī)的程序。
STAT :進(jìn)程的狀態(tài),具體見2.1列出來的部分 ,
START :進(jìn)程開始創(chuàng)建的時(shí)間 ,
TIME :進(jìn)程使用的總cpu時(shí)間,
COMMAND : 進(jìn)程對(duì)應(yīng)的實(shí)際程序。
2.3 動(dòng)態(tài)顯示內(nèi)存中的進(jìn)程信息(top)

四、進(jìn)程的清除

   kill -9 -pid (pid通過上面的命令可以查到)

注:有些進(jìn)程是不允許停止的,因?yàn)橥V箷?huì)造成系統(tǒng)的不穩(wěn)定,甚至崩潰。(網(wǎng)上搜索進(jìn)程知識(shí)了解更多)

五 刪除相關(guān)進(jìn)程

如,要 kill 掉 swoole 相關(guān)的進(jìn)程

ps aux | grep swoole |  awk '{print $2}' | xargs kill -9

ps 列出所有進(jìn)程,

參數(shù):
a - 顯示現(xiàn)行終端機(jī)下的所有進(jìn)程,包括其他用戶的進(jìn)程;
u - 以用戶為主的進(jìn)程狀態(tài) ;
x - 通常與 a 這個(gè)參數(shù)一起使用,可列出較完整信息。
grep 過濾掉不包含 "swoole" 的行
awk '{print $2}' 獲取進(jìn)程 ID (PID, Process Identification),我們想 kill 掉某一個(gè)進(jìn)程的時(shí)候需要通過 PID 指定特定進(jìn)程
xargs 將標(biāo)準(zhǔn)輸入數(shù)據(jù)轉(zhuǎn)換成命令行參數(shù),xargs能夠處理管道或者stdin并將其轉(zhuǎn)換成特定命令的命令參數(shù)。
也就是將管道傳遞過來的每一個(gè) PID 作為 kill -9 的參數(shù)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、常用命令總結(jié) 二、進(jìn)程簡(jiǎn)述及查看方式 進(jìn)程是運(yùn)行的程序在系統(tǒng)中的存在形式,通過查看進(jìn)程的狀態(tài)信息,我們可以了解...
    yichen_china閱讀 20,799評(píng)論 0 0
  • Linux中查看進(jìn)程有許多種方式,我們今天帶著大家看看三種查看進(jìn)程的方式:pstree、top和pgrep。pst...
    MrhahaKent閱讀 621評(píng)論 0 0
  • Linux下顯示系統(tǒng)進(jìn)程的命令ps,最常用的有ps -ef 和ps aux。這兩個(gè)到底有什么區(qū)別呢?兩者沒太大差別...
    空口言_1d2e閱讀 2,807評(píng)論 0 0
  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,712評(píng)論 0 5
  • 又來到了一個(gè)老生常談的問題,應(yīng)用層軟件開發(fā)的程序員要不要了解和深入學(xué)習(xí)操作系統(tǒng)呢? 今天就這個(gè)問題開始,來談?wù)劜?..
    tangsl閱讀 4,322評(píng)論 0 23

友情鏈接更多精彩內(nèi)容