Linux常用命令:if、for、which、ps、grep、netstat、lsof、head、tail、sed、awk、cut、sort、uniq、dos2unix、find、xargs、kill)
一、linux查看佔用內存/cpu最高的進程情況(註明:可以使用一下命令查使用內存最多的10個進程)
1、查看佔用cpu最高的進程
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head
2、查看佔用內存最高的進程
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head
註釋:
該命令組合實際上是下面兩句命令:
ps aux|head -1
ps aux|grep -v PID|sort -rn -k +3|head
其中第一句主要是爲了獲取標題(USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND)。
接下來的grep -v PID是將ps aux命令得到的標題去掉,即grep不包含PID這三個字母組合的行,再將其中結果使用sort排序。
sort -rn -k +3該命令中的-rn的r表示是結果倒序排列,n爲以數值大小排序,而-k +3則是針對第3列的內容進行排序,再使用head命令獲取默認前10行數據。(其中的|表示管道操作)
補充:內容解釋
PID:進程的ID
USER:進程所有者
PR:進程的優先級別,越小越優先被執行
NInice:值
VIRT:進程佔用的虛擬內存
RES:進程佔用的物理內存
SHR:進程使用的共享內存
S:進程的狀態。S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值爲負數
%CPU:進程佔用CPU的使用率
%MEM:進程使用的物理內存和總內存的百分比
TIME+:該進程啓動後佔用的總的CPU時間,即佔用CPU使用時間的累加值。
COMMAND:進程啓動命令名稱
二、Linux下grep命令-查找多個條件的
例子:grep -E "IPADDR|HWADDR"