Ngantuk nunggu jam shift selesai, iseng – iseng bikin script sederhana buat ngitung persentase penggunaan memory.
Seperti yg kita ketahui, perintah top di linux/unix hanya mengeluarkan Total memory dan Free memory.
Nah dari pada bolak balik buka calculator, atau copas di excel, biar lebih geeky, berikut saya buat script yang dijalankan pada command line.
[onay@dudulz-box Script]$ cat persen.sh
#!/bin/bash
# memory usage percentage script
# author onay
HELP="USAGE: ./persen.sh MEMTOTAL MEMFREE"
if [[ -n "$1" && -n "$2" ]] ; then
let MEMUSAGE=$1-$2
PERCENTAGE=`awk 'BEGIN{ printf ( '$MEMUSAGE' / '$1' * 100 ) }'`
echo 'Memory Total =' $1'G'
echo 'Memory Free =' $2'G'
echo 'Memory Usage =' $MEMUSAGE'G'
echo 'Memory Usage Percentage =' $PERCENTAGE'%'
else
echo $HELP
fi
Untuk menjalankan scriptnya, terlebih dulu jalankan perintah top dan lihat total memory dan free memory-nya.
# top
last pid: 2444; load avg: 12.1, 9.80, 8.83; up 865+18:37:44 22:03:37
653 processes: 628 sleeping, 8 zombie, 5 stopped, 12 on cpu
CPU states: 66.0% idle, 15.5% user, 18.6% kernel, 0.0% iowait, 0.0% swap
Memory: 80G phys mem, 13G free mem, 67G total swap, 66G free swap
Setelah itu jalankan scriptnya dengan menambahkan total mem dan free mem-nya.
[onay@dudulz-box Script]$ ./persen.sh 80 13
Memory Total = 80G
Memory Free = 13G
Memory Usage = 67G
Memory Usage Percentage = 83.75%
Memory usage dalam persentasenya adalah 83.75%.
Nah lumayan menghilangkan kebosanan..
Regards,
Onay.
