From 87ba936ecf99af5fa7c09eefd451cd1c5dad4614 Mon Sep 17 00:00:00 2001 From: Ryan McBride Date: Fri, 23 Jan 2009 08:30:03 +0000 Subject: [PATCH] I want to know if I'm on AC, might as well make it pretty while we're here. Also try to make it shut up on systems without battery. --- baraction.sh | 46 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/baraction.sh b/baraction.sh index e2b7806..b146d5b 100644 --- a/baraction.sh +++ b/baraction.sh @@ -1,2 +1,46 @@ #!/bin/sh -while :; do echo "battery" `/usr/sbin/apm -l` "%"; sleep 1; done + +print_apm() { + BAT_STATUS=$1 + BAT_LEVEL=$2 + AC_STATUS=$3 + + if [ $AC_STATUS -ne 255 -o $BAT_STATUS -lt 4 ]; then + if [ $AC_STATUS -eq 0 ]; then + echo "on battery (${BAT_LEVEL}%)" + else + case $AC_STATUS in + 1) + AC_STRING="on AC: " + ;; + 2) + AC_STRING="on backup AC: " + ;; + *) + AC_STRING="" + ;; + esac; + case $BAT_STATUS in + 4) + BAT_STRING="(no battery)" + ;; + [0-3]) + BAT_STRING="(battery ${BAT_LEVEL}%)" + ;; + *) + BAT_STRING="(battery unknown)" + ;; + esac; + + FULL="${AC_STRING}${BAT_STRING}" + if [ "$FULL" != "" ]; then + echo $FULL + fi + fi + fi +} + +while :; do + print_apm `/usr/sbin/apm -alb` + sleep 59 +done -- 2.39.2