मेरे पास एक ही मुद्दा है और यह वास्तव में निराशाजनक है। मैंने BatteryAlert.sh स्क्रिप्ट का उपयोग करके हल किया :
#!/bin/bash
BATTERY=$(upower -e | grep 'BAT')
while :
do
BATTERY_PERCENTAGE=$(upower -i $BATTERY|grep percentage|awk '{ print $2 }'|sed s/'%'/''/g)
CABLE=$(upower -d | grep -n2 line-power | grep online | awk '{ print $3 }')
if [[ "$BATTERY_PERCENTAGE" -lt "10" && $CABLE = "no" ]]; then
notify-send --urgency=critical "WARNING: Battery is about to die" "Plug in the power cable"
play /usr/share/sounds/KDE-Sys-Warning.ogg &> /dev/null
fi
sleep 10
done
मैं केडीई का उपयोग कर रहा हूं लेकिन आप इसे हर डेस्कटॉप वातावरण के साथ उपयोग कर सकते हैं। आपको इसे रूट उपयोगकर्ता के रूप में चलाने या crontab सिंटैक्स के साथ पागल होने की आवश्यकता नहीं है। अगर आपको साउंड अलर्ट चाहिए तो आपको केवल नोटिफिकेशन साउंड को बदलना होगा। यदि आप स्क्रिप्ट को स्वचालित रूप से प्रारंभ करने के लिए नहीं चाहते हैं, जब डेस्कटॉप वातावरण ने USA / bin फ़ोल्डर में BatteryAlertLauncher.sh स्क्रिप्ट के साथ स्क्रिप्ट को शुरू किया है:
#!/bin/bash
function getRunningProcesses
{
ps -aux | grep -v grep | grep BatteryAlert.sh
}
if [[ -n "$(getRunningProcesses)" ]] ; then
exit
fi
BatteryAlert.sh&
सुनिश्चित करें कि वे निष्पादन योग्य हैं:
chmod u+x $USER/bin/BatteryAlert*
तो बस निम्नलिखित आदेश चलाएँ:
ln -s /home/$(USER)/bin/BatteryAlertLauncher.sh .config/autostart/
आप इस कमांड को दर्ज करके अलर्ट स्क्रिप्ट को bash से भी चला सकते हैं:
BatteryAlertLauncher.sh