battery 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #!/bin/sh
  2. # script to display the battery state in dwmblocks
  3. #acpi -b | grep -q "Battery 0" || { printf ""; exit; }
  4. #
  5. #BATTERYSTATE=$( acpi -b | awk '{ split($5,a,":"); print substr($3,0,2), $4, "["a[1]":"a[2]"]" }' | tr -d ',DiFu' )
  6. #if [[ $BATTERYSTATE =~ "Ch" ]]; then
  7. #icon="⚡"
  8. #else
  9. #icon="🔋"
  10. #fi
  11. #batterypercent=$(echo "$BATTERYSTATE" | tr -d 'Ch' | sed 's/cargng:/?/')
  12. percent="$(cat /sys/class/power_supply/BAT*/capacity)"
  13. if grep -q 'Discharging' /sys/class/power_supply/BAT*/status; then
  14. if [ "$percent" -gt 89 ]; then
  15. icon=" "
  16. elif [ "$percent" -gt 74 ]; then
  17. icon=" "
  18. elif [ "$percent" -gt 49 ]; then
  19. icon=" "
  20. elif [ "$percent" -gt 24 ]; then
  21. icon=" "
  22. else
  23. icon=" "
  24. fi
  25. elif grep -q 'Charging' /sys/class/power_supply/BAT*/status; then
  26. icon=" "
  27. if [ "$percent" -eq 100 ]; then
  28. percent="99"
  29. fi
  30. elif grep -q 'Full' /sys/class/power_supply/BAT*/status; then
  31. icon=" "
  32. else
  33. icon=" "
  34. fi
  35. printf "%s %s\\n" "$icon" "$percent"