independ battery and volume
This commit is contained in:
33
battery/batterymonitor
Executable file
33
battery/batterymonitor
Executable file
@@ -0,0 +1,33 @@
|
||||
#!/bin/sh
|
||||
|
||||
POLLING_FREQUENCY=1
|
||||
|
||||
# ISO 8601
|
||||
alias date="date '+%Y-%m-%dT%T'"
|
||||
|
||||
emit() {
|
||||
printf "[%s] " "$(date)"
|
||||
echo "$@"
|
||||
}
|
||||
|
||||
! battery >/dev/null 2>&1 \
|
||||
&& printf "Unable to get battery status on this system.\n" 1>&2 \
|
||||
&& exit 1 \
|
||||
|| true
|
||||
|
||||
current_level=$(battery)
|
||||
previous_level=$current_level
|
||||
|
||||
emit "$(printf "Current level: %d%%" "$current_level")"
|
||||
|
||||
while true; do
|
||||
current_level=$(battery)
|
||||
if ! [ $current_level -eq $previous_level ]; then
|
||||
[ $current_level -lt $previous_level ] \
|
||||
&& emit "$(printf "Discharged: %d%% -> %d%%\n" $previous_level $current_level )" \
|
||||
|| emit "$(printf " Charged: %d%% -> %d%%\n" $previous_level $current_level )"
|
||||
previous_level=$current_level
|
||||
fi
|
||||
|
||||
sleep $POLLING_FREQUENCY
|
||||
done
|
||||
Reference in New Issue
Block a user