利用腳本獲取Linux服務器的CPU和內存。shell
須要安裝bc計算器服務器
yum install -y bc
計算CPU利用率,配置了5秒採樣。測試
執行腳本,5秒後輸出採集日期|CPU負載|可用內存|總內存
code
#!/bin/sh ##echo user nice system idle iowait irq softirq CPULOG_1=$(cat /proc/stat | grep 'cpu ' | 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}') # 休眠5秒,繼續採樣 sleep 5 CPULOG_2=$(cat /proc/stat | grep 'cpu ' | 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}') SYS_IDLE=`expr $SYS_IDLE_2 - $SYS_IDLE_1` Total=`expr $Total_2 - $Total_1` SYS_USAGE=`expr $SYS_IDLE/$Total*100 |bc -l` SYS_Rate=`expr 100-$SYS_USAGE |bc -l` Disp_SYS_Rate=`expr "scale=3; $SYS_Rate/1" |bc` echo $Disp_SYS_Rate% # 增長內存統計 Memory=`free -m | awk 'NR==2{print $4"|"$2}'` # 採集日期 | CPU負載 | 可用內存 | 總內存 echo `date '+%Y-%m-%d %H:%M'`"|"$Disp_SYS_Rate%"|"$Memory exit 0
在CentOS7上測試經過。內存