tidied up battery

This commit is contained in:
Alexander Bocken 2021-07-16 18:56:20 +02:00
parent e846eeeec3
commit df0ea6a174
Signed by: Alexander
GPG Key ID: 1D237BE83F9B05E8

View File

@ -17,12 +17,24 @@ for battery in /sys/class/power_supply/BAT?
do
# Get its remaining capacity and charge status.
capacity=$(cat "$battery"/capacity 2>/dev/null)
[ -n "$capacity" ] && [ "$capacity" -gt 100 ] && echo "Error. Capacity:$capacity" > /dev/stderr && continue #do not print misreads
[ -z "$capacity" ] && echo "Error. Capacity:$capacity" > /dev/stderr && continue #if battery fails during reading, quit
[ -n "$capacity" ] && [ "$capacity" -eq 100 ] && echo && continue # do not display full batteries (nice to unclutter status bars for laptops mostly used stationiary)
if [ -n "$capacity" ]; then
#do not print misreads
[ "$capacity" -gt 100 ] &&
echo "Error. Capacity:$capacity" > /dev/stderr &&
continue
# do not display full batteries (nice to unclutter status bars for laptops mostly used stationiary)
[ "$capacity" -eq 100 ] &&
printf '\n' &&
continue
status=$(sed "s/Discharging/🔋/;s/Not charging/🛑/;s/Charging/🔌/;s/Unknown/🔋/;s/Full/⚡/" "$battery"/status)
# If it is discharging and 25% or less, we will add a ❗ as a warning.
[ "$capacity" -le 25 ] && [ "$status" = "🔋" ] && warn="❗"
[ "$capacity" -le 25 ] &&
[ "$status" = "🔋" ] &&
warn="❗"
printf "%s%s%s%%\n" "$status" "$warn" "$capacity"
unset warn
else
echo "Error. Capacity:$capacity" > /dev/stderr #if battery fails during reading, quit
fi
done | sed 's/ *$//'