Fix memory usage for all BSD distros we support

This commit is contained in:
Dylan 2016-05-13 09:57:40 +10:00
parent b379106e35
commit 987c67fdd5

View file

@ -1409,7 +1409,21 @@ getmemory () {
;;
"BSD")
memtotal=$(($(sysctl -n hw.physmem) / 1000))
case "$distro" in
"OpenBSD"*)
memtotal=$(top -d 1 | awk -F ': |/| |M' '/Memory:/ {printf $4}')
;;
"FreeBSD"* | "DragonFly"*)
memtotal=$(dmesg | awk -F '\\(| ' '/real mem/ {printf $7}')
;;
"NetBSD"*)
memtotal=$(awk -F ':|kB' '/MemTotal:/ {printf $2}' /proc/meminfo)
memtotal=$((memtotal / 1024))
;;
esac
memfree=$(($(vmstat | awk 'END{printf $4}') / 1000))
memused=$((memtotal - ${memfree/M}))
;;