28 lines
710 B
Bash
28 lines
710 B
Bash
#!/usr/bin/env bash
|
|
|
|
mem_info=$(</proc/meminfo)
|
|
mem_info=$(echo $(echo $(mem_info=${mem_info// /}; echo ${mem_info//kB/})))
|
|
for m in $mem_info; do
|
|
case ${m//:*} in
|
|
"MemTotal") usedmem=$((usedmem+=${m//*:})); totalmem=${m//*:} ;;
|
|
"ShMem") usedmem=$((usedmem+=${m//*:})) ;;
|
|
"MemFree"|"Buffers"|"Cached"|"SReclaimable") usedmem=$((usedmem-=${m//*:})) ;;
|
|
esac
|
|
done
|
|
usedmem=$((usedmem / 1024))
|
|
totalmem=$((totalmem / 1024))
|
|
mem="${usedmem}MB / ${totalmem}MB"
|
|
|
|
## Complete summary
|
|
if [[ $1 = "-fi" ]]; then
|
|
echo " $mem"
|
|
elif [[ $1 = "-f" ]]; then
|
|
echo "$mem"
|
|
|
|
## Only used RAM
|
|
elif [[ $1 = "-i" ]]; then
|
|
echo " $usedmem MB"
|
|
else
|
|
echo "$usedmem MB"
|
|
fi
|