前几天一个同事让我帮忙做个脚本,用来实时监控系统性能,在负载最低的时候执行他的一个统计程序,于是我就帮忙给他写了一个。写的不是很好,还请大家多提建议

#!/bin/bash
cpu=`/usr/bin/sar 1 5 | awk '/Average/{print $3}'`
mem=`/usr/bin/sar -r 1 5 |awk '/Average/{print $4}'`
mysqlpid=`ps aux |awk '/^mysql/{print $2}'`
mysql=`sar -x $mysqlpid 1 5 awk '/Average/{print $5}'`
freemem=`free -m |awk '/-/{print $ 4}'` #因为内存占用始终是90%多所以用这个了,取出真实空闲内存

if [ $cpu \< 2 ] && [ $freemem \< 6000 ] && [ $mysql \< 2 ];
        then
        echo `date +"%Y%d %H%M"` $cpu $mem $mysql $freemem >> /root/testload.txt #这段可以替换成你需要执行的脚本或者命令
fi

好了,就这么简单,呵呵!