不说了,上工具

#cat    buddyinfo.sh
#!/bin/sh
BC_MUTI(){
#subtraction
if [[ -n $1 && -n $2 ]];then
res1=$(printf "%.2f" `echo "scale=2;($1*$2)"|bc`)
echo $res1
fi
} MESG(){
local GROUP="$1"
local KEY=$2
local VALUE=$3
local MEASURE=$4 if [[ -n $VALUE ]];then
echo -e "$(date "+%F %H:%M:%S"),$GROUP,$KEY,$VALUE,$MEASURE" >> $REAL_LOG
return 0
fi
} BC_BUDDY(){
aa=$1
bb=$2
let "res1=$aa*2**$bb"
echo $res1
} CONVERT_BUDDY_VALUE(){
start=$1
MAX=`cat /proc/buddyinfo | grep "Normal"| awk -F"Normal" '{print $2}'|awk '{print NF}'`
MAX=`echo "$MAX - 1" | bc`
buddy_values=`cat /proc/buddyinfo | grep "Normal"| awk -F"Normal" '{print $2}'`
array2=(
$buddy_values
)
bb=`echo ${array2[@]:$start:$MAX}` count=0
final_vvv=0
for value in ${bb[@]};do
vvv=`BC_BUDDY $value $count`
count=`echo "$count +1 "|bc`
final_vvv=`echo "$final_vvv + $vvv"|bc`
done echo $final_vvv
} LOOP_VMSTAT(){
while [[ 0 == 0 ]] ;do
sleep 1
CALCULATE_VMSTAT
done
} CALCULATE_VMSTAT(){
timestamp=$(date "+%Y-%m-%d-%H:%M:%S")
order1=`CONVERT_BUDDY_VALUE 1`
order2=`CONVERT_BUDDY_VALUE 2`
order3=`CONVERT_BUDDY_VALUE 3`
order4=`CONVERT_BUDDY_VALUE 4`
order5=`CONVERT_BUDDY_VALUE 5`
order6=`CONVERT_BUDDY_VALUE 6`
order7=`CONVERT_BUDDY_VALUE 7`
order8=`CONVERT_BUDDY_VALUE 8`
order9=`CONVERT_BUDDY_VALUE 9`
order10=`CONVERT_BUDDY_VALUE 10`
printf "%-20s %-7s %-7s %-7s %-7s %-7s %-7s %-7s %-7s %-7s %-7s %-7s\n" $timestamp $order1 $order2 $order3 $order4 $order5 $order6 $order7 $order8 $order9 $order10
}
main(){
printf "%-20s %-7s %-7s %-7s %-7s %-7s %-7s %-7s %-7s %-7s %-7s %-7s\n" "timestamp" "order1" "order2" "order3" "order4" "order5" "order6" "order7" "order8" "order9" "order10"
LOOP_VMSTAT
}
main
[root@host /home/ahao.mah]
#sh buddyinfo.sh
timestamp order1 order2 order3 order4 order5 order6 order7 order8 order9 order10 2017-04-26-20:53:20 9952240 4975948 2487866 1243711 621496 309892 154207 76867 38313 19124
2017-04-26-20:53:22 9952309 4975928 2487861 1243712 621496 309892 154207 76867 38313 19124
2017-04-26-20:53:23 9952392 4975970 2487869 1243713 621496 309892 154207 76867 38313 19124
2017-04-26-20:53:24 9952429 4975992 2487877 1243713 621496 309892 154207 76867 38313 19124
2017-04-26-20:53:26 9952449 4975993 2487879 1243713 621496 309892 154207 76867 38313 19124
2017-04-26-20:53:27 9952485 4975998 2487880 1243713 621496 309892 154207 76867 38313 19124
2017-04-26-20:53:28 9952490 4976003 2487883 1243715 621497 309892 154207 76867 38313 19124
2017-04-26-20:53:29 9952475 4975996 2487882 1243716 621498 309892 154207 76867 38313 19124
2017-04-26-20:53:31 9952404 4975956 2487881 1243716 621498 309892 154207 76867 38313 19124
2017-04-26-20:53:32 9952494 4975998 2487886 1243716 621498 309892 154207 76867 38313 19124

buddyinfo 内存碎片数据采集的更多相关文章

  1. 关于linux 内存碎片指数

    linux针对每一个node的每个zone的每个order,都有一个碎片指数来描述当前的碎片程度,也就是 extfrag_index 参数: extfrag_index这个要展示出来,需要内核编译了两 ...

  2. Atitit.每月数据采集与备份 v4

    Atitit.每月数据采集与备份 v4 备份检查表 r12 00cate 00item im Inputmethod  ok ok Log Log ok cyar Cyar log  ... ok c ...

  3. C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)

    目       录 工业物联网和集成系统解决方案的技术路线... 1 前言... 1 第一章           系统架构... 3 1.1           硬件构架图... 3 1.2      ...

  4. Atitit.数据检索与网络爬虫与数据采集的原理概论

    Atitit.数据检索与网络爬虫与数据采集的原理概论 1. 信息检索1 1.1. <信息检索导论>((美)曼宁...)[简介_书评_在线阅读] - dangdang.html1 1.2. ...

  5. 现场打印智能无线PDA安卓POS 条码识别、打印、数据采集销售开单收银管理软件

    现场打印安卓POS 条码识别.打印.数据采集管理软件 案例: 经营日化品牌,从事小型超市和日用品商店的批发配送业务. 公司以前的销售模式:三个业务员负责跑市场,每个人负责一个区域,平均每天每个人要去到 ...

  6. 大家都在用PDA条码扫描枪管理企业仓库 PDA无线数据采集程序

    PDA数据采集器又称之为手持终端,这些都是用于扫描货物条码统计数据用的,PDA扫描枪有效提高企业仓库管理,在仓库管理中引入条码技术,对仓库的到货检验.入库.出库.调拨.移库移位.库存盘点等各个作业环节 ...

  7. Python网络数据采集系列-------概述

    这是一个正在准备中的系列文章,主要参考的是<Web Scraping with Python_Collecting Data from the Modern Web-O'Reilly(2015) ...

  8. 【数据采集】VBA数据采集可用 COM 组件

    windows 中提供了4个COM组件都可以进行数据采集. Wininet WinHttp XmlHttp MSHTML https://msdn.microsoft.com/en-us/librar ...

  9. Flume NG安装部署及数据采集测试

    转载请注明出处:http://www.cnblogs.com/xiaodf/ Flume作为日志收集工具,监控一个文件目录或者一个文件,当有新数据加入时,采集新数据发送给消息队列等. 1 安装部署Fl ...

随机推荐

  1. FZU - 1601 - Alibaba's treasures

    先上题目: Problem 1601 Alibaba's treasures Accept: 332    Submit: 636Time Limit: 1000 mSec    Memory Lim ...

  2. LDA 两种含义

    关于LDA有两种含义,一种是线性判别分析(Linear Discriminant Analysis),一种是概率主题模型:隐含狄利克雷分布(Latent Dirichlet Allocation,简称 ...

  3. COCOS2D-X暂时设置竖屏,过一阵子再设置回横屏

    mainActivity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);//竖屏 竖屏是JAVA代码 另外再改动C ...

  4. swing Jlable中存放变量显示问题

    java swing 学习 在做一个ATM机系统小案例中.碰到JLable中存放变量,变量发生改变.而JLable中还是显示原来的值,网上寻找答案,用updateUI()和revalidate();方 ...

  5. CLLocationManagerDelegate的解说

    1.//新的方法.登陆成功之后(旧的方法就无论了) - (void)locationManager:(CLLocationManager *)manager      didUpdateLocatio ...

  6. java中tcp小样例

    服务端: ServerSocket service = new ServerSocket(7777); Socket socket = service.accept(); InputStream in ...

  7. HDU 1576 A/B(扩展欧几里德变形)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1576 Problem Description 要求(A/B)%9973,但因为A非常大,我们仅仅给出n ...

  8. 解题报告 之 HDU5303 Delicious Apples

    解题报告 之 HDU5303 Delicious Apples Description There are n apple trees planted along a cyclic road, whi ...

  9. leetCode 74.Search a 2D Matrix(搜索二维矩阵) 解题思路和方法

    Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the follo ...

  10. 理解和配置 Linux 下的 OOM Killer【转】

    本文转载自:http://www.vpsee.com/2013/10/how-to-configure-the-linux-oom-killer/ 最近有位 VPS 客户抱怨 MySQL 无缘无故挂掉 ...