Answers:
对于那些愿意复制和运行bash脚本并添加cron作业的人,这里有一个完整的解决方案,该解决方案免费且最新(截至2018年6月),不需要编程(我为您完成了这一部分)系统管理:
将此保存到bash脚本中,如~/.mouse-battery-check.sh
:
#!/usr/bin/env bash
PATH=/usr/local/bin:/usr/local/sbin:~/bin:/usr/bin:/bin:/usr/sbin:/sbin
# actual battery level
BATT=`ioreg -c AppleDeviceManagementHIDEventService -r -l | grep -i mouse -A 20 | grep BatteryPercent | cut -d= -f2 | cut -d' ' -f2`
# defaults to warn at 20%; accepts other number as 1st argument (useful for testing)
COMPARE=${1:-20}
if [ -z "$BATT" ]; then
echo 'No mouse found.'
exit 0
fi
if (( BATT < COMPARE )); then
osascript -e "display notification \"Mouse battery is at ${BATT}%.\" with title \"Mouse Battery Low\""
fi
打开终端,使脚本可执行:
chmod +x ~/.mouse-battery-check.sh
现在,您可以通过在连接蓝牙鼠标时运行脚本来测试脚本是否发送了桌面通知(此脚本测试电池电量是否少于101%,因此它应始终发送通知):
~/.mouse-battery-check.sh 101
要使用默认设置(20%)再次测试:
~/.mouse-battery-check.sh
当未检测到蓝牙鼠标时,脚本将返回“找不到鼠标”。
现在要定期测试并自动通知您,添加一个新的cron作业:
env EDITOR=nano crontab -e
添加一个条目,例如每15分钟检查一次:
*/15 * * * * cd ~ && bash ~/.mouse-battery-check.sh
(您可以在此处再次将电池百分比作为参数传递给脚本。)
按下Control+X
然后Y
再Enter
退出编辑器并保存cron作业。
对于电池检查,此答案:
对于通知,此答案:
如何从AppleScript或Shell脚本触发通知中心通知?
对于cron工作,此博客:
https://ole.michelsen.dk/blog/schedule-jobs-with-crontab-on-mac-osx.html
有一种方法!
遗憾的是,您需要使用BTT(更好的触摸工具)。BTT是免费的,但是为了支持正在进行的开发,现在有一种按需付费的许可模式,起价为5美元。但是afaik您可以在几天之内免费进行测试。
如何设置通知:
您可以随时下载bitbar并仅添加一些脚本来运行,例如https://github.com/kkunkel/OSX-Nagios。