バッテリーが危険レベルに達したら、LXDEを搭載したDebianノートブックで10秒または30秒ごとにシステムビープ音を鳴らしたいと思います。それは可能ですか?
答え1
はい、可能です。 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
ユーティリティを確認してください。