ITPub博客

首页 > 应用开发 > IT综合 > SHELL脚本例子

SHELL脚本例子

原创 IT综合 作者:Togal 时间:2015-05-12 18:09:01 0 删除 编辑

crontab -l
*/1 * * * * /home/gdyh/cpu_memory_monitor.sh 2>/dev/null         # 每分钟执行,出错数据就不要
1 6 * * * /home/gdyh/cpu_busy_memory_avg.sh 2>/dev/null          #早上6点执行,出错数据就不要

cat cpu_busy_memory_avg.sh

#!/bin/bash
cd /home/gdyh/
#if [[ -f cpu_monitor.log ]]; then
#    rm -rf cpu_monitor.log
#fi
days_ago=`date -d '1 days ago' "+%Y-%m-%d"`        #前一天的日期
#days=`date "+%Y-%m-%d"`                               #日期格式:年-月-日
lines=`sort cpu_monitor.log | uniq | grep "$days_ago" | wc -l `         
#echo "lines=$lines"
all_busy=`grep "$days_ago" cpu_monitor.log | awk -F'|' '{print $2}' | awk '{sum=sum+$1;} END{print sum}'`  #以" | "作为分隔符
 #计算第2列的总和并输出

all_busy_avg=`awk 'BEGIN{printf"%.2f\n",'$all_busy'/'$lines'}'`    #输出格式为小数点后两位
all_user_free=`grep "$days_ago" cpu_monitor.log | awk -F'|' '{print $3}' | awk '{sum=sum+$1;} END{print sum}'`
all_user_free_avg=`awk 'BEGIN{printf"%.2f\n",'$all_user_free'/'$lines'}'`
#echo "$days_ago""|""$all_busy_avg""|""$all_user_free_avg"
echo "$days_ago""|""$all_busy_avg""|""$all_user_free_avg" >> cpu_busy_memory_avg.log    #追加内容到文件去

exit 0

cat cpu_memory_monitor.sh
#!/bin/bash
cd /home/gdyh/
#if [[ -f cpu_monitor.log ]]; then
#    rm -rf cpu_monitor.log
#fi
times=2
logtime=`date +"%Y-%m-%d %H:%M:%S"`          #时间格式为:年-月-日 时:分:秒
sum=`top -b -n $times | grep "Cpu" | cut -d "%" -f 4 | awk -F',' '{print $2}' | awk '{sum=sum+$1;} END{print sum} '`
idle_avg=`awk 'BEGIN{printf"%.2f\n",'$sum'/'$times'}'`
busy_avg=`awk 'BEGIN{printf"%.2f\n",'100'-'$idle_avg'}'`
user=`free | grep "buffers/cache" | awk '{print $3}'`
total=`free | grep -i "mem" | awk '{print $2}'`
user_avg=`awk 'BEGIN{printf"%.2f\n",'$user'/'$total'*'100'}'`
#echo "$logtime""|""$busy_avg""|""$user_avg" 
echo "$logtime""|""$busy_avg""|""$user_avg" >> cpu_monitor.log

exit 0



####   end     ###

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29874114/viewspace-1651146/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: CMD个人小结
请登录后发表评论 登录
全部评论

注册时间:2014-09-12

  • 博文量
    6
  • 访问量
    17543