我希望帶有 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
實用程式。