列举出一段时间内内占用的cpu最多的n个进程


创建文件: vim CpuMonitor.sh

 

SECS=$1
UNIT_TIME=$2
echo $1,$2

STEPS=$(( $SECS / $UNIT_TIME ))
echo Watching CPU usage...;
for((i=0;i> /tmp/cpu_usage.$$
    sleep $UNIT_TIME
done

echo  
echo CPU eaters:  
cat /tmp/cpu_usage.$$ | \
awk '  
{ process[$1] += $2; }  
END{  
    for(i in process)  
    {  
        printf("%-20s%s\n",i,process[i]);  
    }  
}' | sort -nrk 2 | head
rm /tmp/cpu_usage.$$

 

 

脚本移植源:http://blog.csdn.net/zmyer/article/details/21047527

你可能感兴趣的:(列举出一段时间内内占用的cpu最多的n个进程)