我正在使用MacBook,并且电池不可靠。我正在尝试找到一个脚本命令,当电池电量低于阈值时,它将使笔记本电脑发出哔哔声。
由于帖子重复,我已经对其进行了编辑。
答案 0 :(得分:0)
您可以使用此脚本来提醒您,当电池电量低于您想要的任何值时,例如低于40%或更多80%“您可以将其更改为您想要的任何值”:
#!/bin/bash
high=$(cat /sys/class/power_supply/BAT0/charge_full_design)
now=$(cat /sys/class/power_supply/BAT0/charge_now)
stat=$(cat /sys/class/power_supply/BAT0/status)
echo -e "scale=1\n$now/$high * 100\nquit"> hi
per=$(bc hi)
per=$(expr "$per" : '\(.*\)\..*')
if [ $stat == Charging ] ; then
if [ $per -gt 80 ] ; then
zenity --warning --text="BATTERY IS FULL REMOVE THE CHARGER"
fi
elif [ $stat == Discharging ] ; then
if [ $per -lt 40 ] ; then
zenity --warning --text="BATTERY IS LOW PLUGIN THE CHARGER"
fi
fi
rm hi
此bash代码已在Ubuntu上运行
答案 1 :(得分:0)
感谢您的回复。终于找到了解决方法:
1)我首先创建一个名为check_battery的文件,其内容如下:
ioreg -l | awk '$3~/Capacity/{c[$3]=$5}END{OFMT="%.3f";max=c["\"MaxCapacity\""]; bat= (max>0?100*c["\"CurrentCapacity\""]/max:"?"); printf("%d", bat)}'
2)然后,我创建了以下文件:
\#!/bin/bash
sh check_battery>battery;
let t=60
read a < battery
if(( "$a" < "$t" ));
then
say "Battery level is lower than 60%!";
say "BEAP BEAP"
fi;
3)最后,我将其添加到我的crontab作业中(这不起作用!)。然后我发现我必须使用launchd代替:( https://alvinalexander.com/mac-os-x/mac-osx-startup-crontab-launchd-jobs
现在可以在我的MacBook Lab上使用它了...