如何让系统发出低电量警告?

如何让系统发出低电量警告?

我希望带有 LXDE 的 Debian 笔记本电脑在电池达到临界水平时每 10 或 30 秒发出一次系统蜂鸣声。那可能吗?

答案1

对的,这是可能的。一种方法是在电池电量变化时监听 udev 事件,并将其与阈值进行比较。否则,这是一种快速而肮脏的方式。创建一个 systemd 服务,在启动时在后台启动此服务,一旦电池电量低于 5%,您将每 10 秒听到一次蜂鸣声。

#!/bin/bash

let CRIT_BATT_LVL=5
let PERIOD=10

exec 3>&2
exec 2>/dev/null

while true; do
  level=$(acpi -b | grep -oP '\d+(?=%)')
  if [ $level -lt $CRIT_BATT_LVL ]; then
    timeout -k 0.75s 0.5s speaker-test --frequency 2000 --test sine >/dev/null
  fi
  sleep $PERIOD
done

exec 2>&3
exec 3>&-

扬声器将发出蜂鸣声。确保它们没有静音。如果您想通过主板扬声器发出蜂鸣声,请查看该beep实用程序。

相关内容