#! /bin/sh . ../mpanel.subr align="right" background="$(color 10)" foreground="$(color 3)" waitFunc="sleep 1" clickFunc='toggle flag; [ "$flag" = "true" ] && waitFunc="sleep 1" || waitFunc="sleep infinity"' flag="true" STORE_FILE="$XDG_RUNTIME_DIR/stats-mem.tmp" SYMBOL="" INTERVAL="1" store_stats() { memTotal="$(cat /proc/meminfo | grep MemTotal | awk '{print $2}')" memFree="$(cat /proc/meminfo | grep MemFree | awk '{print $2}')" awk "BEGIN {printf \"%3.0f\", 100*(($memTotal-$memFree)/$memTotal)}" | atomic_write "$STORE_FILE" } print_stats() { if [ "$flag" = "true" ]; then echo "$SYMBOL$(cat "$STORE_FILE")%" else echo "$SYMBOL" fi } kickoff store_stats $INTERVAL & loop print_stats