獲取CPU使用率腳本
#!/bin/bashgino
20150711
CPULOG_1=
cat /proc/stat | head -n1 | awk '{print $2" "$3" "$4" "$5" "$6" "$7" "$8}'SYS_IDLE_1=echo $CPULOG_1 | awk '{print $4}'Total_1=echo $CPULOG_1 | awk '{print $1+$2+$3+$4+$5+$6+$7}'sleep 1
CPULOG_2=
cat /proc/stat | head -n1 | awk '{print $2" "$3" "$4" "$5" "$6" "$7" "$8}'SYS_IDLE_2=echo $CPULOG_2 | awk '{print $4}'Total_2=echo $CPULOG_2 | awk '{print $1+$2+$3+$4+$5+$6+$7}'Total=
expr $Total_2 - $Total_1SYS_IDLE=
expr $SYS_IDLE_2 - $SYS_IDLE_1SYS_USAGE=
echo $SYS_IDLE/$Total*100 |bc -lSYS_Rate=
echo 100-$SYS_USAGE |bc -lDisp_SYS_Rate=
expr "scale=2; $SYS_Rate/1" |bcprintf "%4.2f%%\n" ${Disp_SYS_Rate}
</pre>
總結:
總CPU使用率的計算公式CPU時間=user+system+nice+idle+iowait+irq+softirq+steal CPU時間片=CPU_2 - CPU_1 IDLE時間=idle_2 - idle_1 CPU總的使用率=100*(CPU時間片-IDLE時間)/CPU時間片