linux 查看进程
1.ps 各字段含義
如果讓程序始終在后臺執行,即使關閉當前的終端也執行(之前的&做不到),這時候需要nohup。
該命令可以在你退出帳戶/關閉終端之后繼續運行相應的進程。關閉中斷后,在另一個終端jobs已經無法看到后臺跑得程序了,此時利用ps(進程查看命令)
ps -aux | grep "test.sh" #a:顯示所有程序 u:以用戶為主的格式來顯示 x:顯示所有程序,不以終端機來區分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
<??? 高優先級
??? N??? 低優先級
??? L??? 有些頁被鎖進內存
??? s??? 包含子進程
??? +??? 位于后臺的進程組;
??? l??? 多線程,克隆線程? multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
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是顯示所有進程和其狀態。
2. jobs
查看當前有多少在后臺運行的命令
jobs -l選項可顯示所有任務的PID,jobs的狀態可以是running, stopped, Terminated。
但是如果任務被終止了(kill),shell 從當前的shell環境已知的列表中刪除任務的進程標識。
3. &
加在一個命令的最后,可以把這個命令放到后臺執行,如
watch -n 10 sh test.sh & #每10s在后臺執行一次test.sh腳本
4.fg
將后臺中的命令調至前臺繼續運行。如果后臺中有多個命令,可以用fg %jobnumber(是命令編號,不是進程號)將選中的命令調出。
5.bg
將一個在后臺暫停的命令,變成在后臺繼續執行。如果后臺中有多個命令,可以用bg %jobnumber將選中的命令調出。
6.kill
通過jobs命令查看job號(假設為num),然后執行kill %num
通過ps命令查看job的進程號(PID,假設為pid),然后執行kill pid
前臺進程的終止:Ctrl+c
7.top
?
轉載于:https://www.cnblogs.com/Reallylzl/p/10762232.html
總結
以上是生活随笔為你收集整理的linux 查看进程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网易拿到今年首个游戏版号:腾讯继续缺席
- 下一篇: 《羊了个羊》小游戏爆火 没人过去第二关: