#!/usr/bin/gawk -f #----------------------------------------------------------------------------- # ~/bin/memswap : display percentage of ram & sawp currently in use # # usage : normally used as a GNU/screen backtick # # notes : 1. % ram used = ((total ram - used) / total ram) * 100 # : 2. % swap used = ((total swap - used) / total swap) * 100 #----------------------------------------------------------------------------- BEGIN { while (getline < "/proc/meminfo") { if ($1=="MemTotal:") {mt = $2}; # mt = total ram on system if ($1=="MemFree:") {mf = $2}; # mf = free ram if ($1=="Buffers:") {mb = $2}; # mb = ram used for buffers if ($1=="Cached:") {mc = $2}; # mc = ram used for cache if ($1=="SwapTotal:") {st = $2}; # st = total swap if ($1=="SwapFree:") {sf = $2}; # sf = free swap } exit; } END { pmu = (mt-(mf+mb+mc)) * 100 / mt; # pmu = % of ram used psu = ((st-sf) * 100 / st); # psu = % of swap used printf ("%2.1f%s %2.1f%s\n"), pmu,"%", psu,"%"; }