利用脚本获取Linux服务器的CPU和内存。
须要装置bc计算器
yum install -y bc
创立执行脚本
计算CPU利用率,配置了5秒采样。
执行脚本,5秒后输入采集日期|CPU负载|可用内存|总内存
#!/bin/sh##echo user nice system idle iowait irq softirqCPULOG_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 5CPULOG_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%"|"$Memoryexit 0
在CentOS7上测试通过。