온도 대신 배터리 수준에서 작동하도록 스크립트 변경

온도 대신 배터리 수준에서 작동하도록 스크립트 변경

특정 CPU 온도에서 컴퓨터를 절전 모드로 전환하는 스크립트가 있습니다.

#!/bin/bash

 while true; do
        val=$(sensors | awk '/temp1/ {print $2}')
        max=$(echo "+82.0")
        if [[ "$val" > "$max" ]]
                then
                        systemctl suspend -i

        fi
    sleep 5
        clear
        sensors
 done
 exit 0

컴퓨터가 특정 배터리 수준에서 절전 모드로 전환되도록 조정/편집할 수 있습니까?

답변1

시스템에 따라 bash에서 배터리 비율 수준을 얻을 수 있습니다.

 level=$(</sys/class/power_supply/BAT0/capacity)
 echo $level

/sys/class/power_supply/장치 이름과 기타 정보는 아래 디렉터리와 파일을 확인하세요 . 또한 upower명령을 사용하여 더 자세한 데이터를 얻을 수도 있습니다.

$ upower -d
...
Device: /org/freedesktop/UPower/devices/battery_BAT0
  native-path:          BAT0
  vendor:               YYYYY
  model:                XXXX
  power supply:         yes
  battery
    present:             yes
    rechargeable:        yes
    state:               discharging
    energy:              23.436 Wh
    energy-full:         26.622 Wh
    energy-rate:         5.5728 W
    voltage:             11.97 V
    time to empty:       4.2 hours
    percentage:          88%

관련 정보