內存空閒率

初學shell試着計算內存空閒率。

首先要採集到內存使用信息,內存信息可以從這裏得到/proc/meminfo

[root@www ~]# cat /proc/meminfo |head -n10
MemTotal:       389364 kB
MemFree:         10824 kB
Buffers:         18096 kB
Cached:         245308 kB
SwapCached:          0 kB
Active:         183944 kB
Inactive:       171684 kB
HighTotal:           0 kB
HighFree:            0 kB
LowTotal:       389364 kB
[root@www ~]#
#########################################

[root@www ~]# cat /proc/meminfo |head -n1|cut -d " " -f8
389364
[root@www ~]# cat /proc/meminfo |head -n2|tail -n1|cut -d " " -f10
10452
通過cut可以得到內存總量和閒置內存數值。通過算數運算:閒置/總量=閒置率。通過老師的提醒,想着下面這種方法可以得到結果。沒想到執行後,結果爲“0”

[root@www ~]# echo `cat /proc/meminfo |head -n2|tail -n1|cut -d " " -f11` / `cat /proc/meminfo |head -n1|cut -d " " -f8`|bc

0
 

比較鬱悶呢!考慮了一下許是有效數字的問題。那麼怎麼改變有效數字呢??首先採用的辦法是閒置量X100後在和總量相除。

[root@www ~]# echo `cat /proc/meminfo |head -n2|tail -n1|cut -d " " -f11`*100 / `cat /proc/meminfo |head -n1|cut -d " " -f8`|bc
1
 

1就是1%吧。不論怎麼樣,大概實現預期目標。在高手眼中這就是垃圾啊!!

採集數據中發現,空閒內存變化比較大,列數也不固定。這方法真的很垃圾呢!

不過是第一次練習。不要給板磚哦!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章