linux命令ps aux|grep 查看進程詳解

linux的ps aux |grep 命令

要對進程進行監測和控制,首先必須要瞭解當前進程的情況,也就是需要查看當前進程, 而ps命令(Process Status)就是最基本同時也是非常強大的進程查看命令.

使用該命令可以確定有哪些進程正在運行和運行的狀態、進程是否結束、進程有沒有殭屍、哪些進程佔用了過多的資源等等.

總之大部分信息都是可以通過執行該命令得到的.

 

ps 爲我們提供了進程的一次性的查看,它所提供的查看結果並不動態連續的;

如果想對進程時間監控,應該用 top 工具。(top會1s一刷新)

 

如果直接用ps命令,會顯示所有進程的狀態,通常結合grep命令查看某進程的狀態。

grep (global search regular expression(RE) and print out the line,全面搜索正則表達式並把行打印出來)是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行打印出來。

 

使用示例:

root@ubuntu00:~/acai/mmdetection$ ps aux|grep ./python

xxx 2542  0.0  0.0 396096 94940 ?        Sl    4月05   1:39 /home/xx/anaconda3/bin/python3.6 /usr/local/bin/jupyter-notebook
xx  56617  0.0  0.0 1278076 95120 pts/9   Sl+  14:17   0:03 /home/xx/deeplearning/anaconda3/envs/open-mmlab/bin/python /home/dl/deeplear
xxx 57891  0.0  0.0 560856 49488 ?        Ssl  14:40   0:01 /home/xx/deeplearning/anaconda3/envs/pytorch/bin/python -m ipykernel_launche
xxx 74158  0.0  0.0  15968  2244 pts/8    S+   16:24   0:00 grep --color=auto./python

上面ps aux輸出格式:

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

格式說明:

USER: 行程擁有者

PID: pid

%CPU: 佔用的 CPU 使用率

%MEM: 佔用的記憶體使用率

VSZ: 佔用的虛擬記憶體大小

RSS: 佔用的記憶體大小

TTY: 終端的次要裝置號碼 (minor device number of tty)

STAT: 該行程的狀態,linux的進程有5種狀態:

D 不可中斷 uninterruptible sleep (usually IO)

R 運行 runnable (on run queue)

S 中斷 sleeping

T 停止 traced or stopped

Z 僵死 a defunct (”zombie”) process

注: 其它狀態還包括W(無駐留頁), <(高優先級進程), N(低優先級進程), L(內存鎖頁).

 

START: 行程開始時間

TIME: 執行的時間

COMMAND:所執行的指令

1) ps a 顯示現行終端機下的所有程序,包括其他用戶的程序。
2)ps -A 顯示所有程序。 
3)ps c 列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數或常駐服務的標示。 
4)ps -e 此參數的效果和指定"A"參數相同。 
5)ps e 列出程序時,顯示每個程序所使用的環境變量。 
6)ps f 用ASCII字符顯示樹狀結構,表達程序間的相互關係。 
7)ps -H 顯示樹狀結構,表示程序間的相互關係。 
8)ps -N 顯示所有的程序,除了執行ps指令終端機下的程序之外。 
9)ps s 採用程序信號的格式顯示程序狀況。 
10)ps S 列出程序時,包括已中斷的子程序資料。 
11)ps -t  指定終端機編號,並列出屬於該終端機的程序的狀況。 
12)ps u  以用戶爲主的格式來顯示程序狀況。 
13)ps x  顯示所有程序,不以終端機來區分。


ps是顯示當前狀態處於running的進程,grep表示正則化搜索搜索,而ps aux是顯示所有進程和其狀態。

$ ps aux | grep python  //查到使用python的進程
$ kill -s 9 pid號 //殺死進程

此外,推薦一篇文章寫的也比較詳細

Linux查看進程id,以及根據進程id查看佔用的端口,根據端口號查看佔用的進程

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章