進程監控top free ps grep pgrep pkill kill & bg fg jobs nohup ctrl+z pstree

1、top命令

https://blog.csdn.net/gxiaop/article/details/55096686html

 

 

1是顯示其餘cpu內容前端

M按照內存排序正則表達式

P按照cpu排序express

K 殺掉某個進行後端

nice 表示優先級改動過的,優先級數字越低,優先度越大bash

top -p 1234 顯示1234的狀況session

2、free命令

free 按照kb顯示ui

free -m 按照m顯示.net

free -h 按照G顯示htm

3、ps命令

https://blog.csdn.net/u014636209/article/details/82141742

ps -aux

ps aux --sort -pmem,+pcpu 按照內存降序,cpu升序查詢,

 

 

進程屬主 進程id cpu 內存 虛擬大小 頁數 終端ID 狀態 開始時間 運行時間 命令

STAT 進程狀態(有如下幾種)

D 沒法中斷的休眠狀態(一般 IO 的進程);

R 正在運行可中在隊列中可過行的;

S 處於休眠狀態;

T 中止或被追蹤;

W 進入內存交換(從內核2.6開始無效);

X 死掉的進程(歷來沒見過);

Z 殭屍進程;

< 優先級高的進程

N 優先級較低的進程

L 有些頁被鎖進內存;

s 進程的領導者(在它之下有子進程);

l 多進程的(使用 CLONE_THREAD, 相似 NPTL pthreads);

+ 位於後臺的進程組;

ps -ef

最好加上-,不然信息很大。。。

 

 

用戶ID 進程ID 父進程ID cpu 啓動時間 終端ID 運行時間 命令

ps 根據uid來選擇查看進程

  • ps -C 根據cmd命令來選
  • ps -G 根據組ID來選
  • ps -p 根據進程id來選
  • ps -s sessionID 來選
  • ps -t 根據tty 來選
  • ps -u 根據用戶選

具體格式能夠加f

ps -o 自定義格式

ps -o user,uid,uname,group,gid,args=COMMAND,cmd,tty,time,pmem.pcpu

中間加,或者再寫個-o

4、grep fgrep pgrep egrep

https://blog.csdn.net/xiaoxinyu316/article/details/46729443

https://blog.csdn.net/weixin_42558057/article/details/82758467

grep 全局正則表達式打印

Global Regular Expressions Print

grep <flags> '<regular expression>' <filename>

grep '\<Tom\>' file   包含單詞Tom的行

grep 'Tom savage' file 包含Tom savage的行

grep '^Tommy' file 包含以Tommy開頭的行

grep '\.bak$' file 包含以.bak結束的行

grep '[Pp]yramid' file 包含pyramid 或Pyramid的單詞的行

grep '[A-Z]' file 包含至少一個大寫字母的行

grep '[0-9]' file 包含至少一個數字的行

grep '[A-Z]...[0-9]' file 包含五個字符,以大寫開頭, 和一個數字結尾的行.

grep -w '[tT]est' file 包含單詞和test的行.

grep -s 'ken sun' file 找到包含ken sun的行, 但不打印行, 而是用來檢查退出狀態.

grep -v aaa file 打印不包含aaa的行.

grep -i cathy file 打印全部包含cathy的行, 而不考慮大小些.

grep -l 'dear cathy' * 打印包含dear cathy的文件的文件名清單.

grep -n tom file   打印匹配的行並追加行號.

grep "$LOGNAME" file 包含變量內容的行, 注意必須用雙引號, 單引號則沒法引用變量.

grep '$name' file 打印包含字符$name的行.

fgrep 固定字符串全局正則表達式打印

Fixed-string Global Regular Expressions Print

fgrep "$name...[a-z]" file 就是在file裏面找到和字符$name...[a-z]同樣的行. 其中$和...等沒有轉義的意義.

pgrep 進程ID全局正則表達式打印

Process-ID Global Regular Expressions Print

pgrep -l bash 全顯示

 

 

pgrep -c bash 查找

 

 

pgrep bash 查找pid

 

 

pgrep -U uid 按uid 來查找

egrep 擴展正則表達式打印

Extended Global Regular Expressions Print

擴展表達式:

+ 匹配一個或者多個先前的字符, 至少一個先前字符.

? 匹配0個或者多個先前字符.

a|b|c 匹配a或b或c

() 字符組, 如: love(able|ers) 匹配loveable或lovers.

(..)(..)\1\2 模板匹配. \1表明前面第一個模板, \2代第二個括弧裏面的模板.

x{m,n} =x\{m,n\} x的字符數量在m到n個之間.

egrep '^ +' file   以一個或者多個空格開頭的行.

grep '^ *' file   同上

egrep '(TOM|DAN) SAVAGE' file 包含 TOM SAVAGE 和DAN SAVAGE的行.

egrep '(ab)+' file 包含至少一個ab的行.

egrep 'x[0-9]?' file 包含x或者x後面跟着0個或者多個數字的行.

egrep 'fun\.$' * 全部文件裏面以fun.結尾的行.

egrep '[A-Z]+' file 至少包含一個大寫字母的行.

egrep '[0-9]' file 至少一個數字的行.

egrep '[A-Z]...[0-9]' file 有五個字符, 第一個式大寫, 最後一個是數字的行.

egrep '[tT]est' file 包含單詞test或Test的行.

egrep 'ken sun' file 包含ken sun的行.

egrep -v 'marry' file 不包含marry的行.

egrep -i 'sam' file 不考慮sam的大小寫,含有sam的行.

egrep -l "dear ken" * 包含dear ken的全部文件的清單.

egrep -n tom file 包含tom的行, 每行前面追加行號.

egrep -s "$name" file 找到變量名$name的, 不打印而是顯示退出狀態. 0表示找到. 1表示表達式沒找到符合要求的, 2表示文件沒找到.

 

5、pkill kill killall

https://blog.csdn.net/xc_zhou/article/details/80768891

killall 按全名字全殺

killall 參數 進程名字

-9 強制殺死 是終止信號

kill -19 進程名 發送暫停信號

kill -18 進程名 發送繼續信號

killal -l 列出已知信號

kill -l KILL 查詢指定信號的數字

kill 單進程殺死

kill [參數] [進程id]

kill %1 殺死 jobid

kill -9 進程號 殺死進程

pkill 按近似名字全殺

pkill 進程名字

pkill和killall區別,killall是全名稱殺死,pkill近似的都殺死

pkill awk 全部awk名字全殺死

6、& bg fg jobs nohup ctrl+z

http://www.cnblogs.com/cy-8593/p/9523605.html

&

掛起後臺執行,一旦斷開終端,則任務終止

fg %N

fg %1 把後臺程序放到前端

bg %N

bg %1 把工做好1號的任務繼續執行

nohup

終端退出任務繼續執行,通常和nohup CMD & 一塊兒用

jobs

查看終端掛起來的任務

ctrl+z

終止執行,掛起到後端,能夠kill -18 xxxx 或者bg %1繼續運行

7、pstree 進程樹

pstree 默認至關於pstree -p 1 從進程1擴展出來的進程

pstree -p pid 能夠看某個ID 的進程樹,日後擴展

pstree -p 2 守護進程樹 不接受任何終端控制

相關文章
相關標籤/搜索