

如何在电池充满或低电量时获得电池状态通知 | Linux 中国
source link: https://zhuanlan.zhihu.com/p/345831104
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

充电时间长了会对电池造成损害,所以在电池 100% 充满时要拔掉电源线。电池充电或放电时没有默认的应用程序来通知,需要安装第三方应用来通知你。
- 来源: https:// linux.cn/article-13036- 1.html
- 作者:Magesh Maruthamuthu
- 译者:geekpi
(本文字数:2689,阅读时长大约:3 分钟)
对于类 Unix 用户来说,Linux 笔记本是不错的选择,但它经常会耗尽电池。我试过很多 Linux 操作系统,但没有像 Windows 那样电池寿命长。
充电时间长了会对电池造成损害,所以在电池 100% 充满时要拔掉电源线。电池充电或放电时没有默认的应用程序来通知,需要安装第三方应用来通知你。
为此,我通常会安装Battery Monitor,但它已经被废弃,所以我创建了一个 shell 脚本来获取通知。
笔记本电池充放电状态可以通过以下两个命令来识别。
使用 acpi
命令。
$ acpi -b Battery 0: Discharging, 71%, 00:58:39 remaining
使用 upower
命令。
$ upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep -w 'state|percentage' | awk '{print $2}' discharging 64%
方法 1:当电池电量高于 95% 或低于 20% 时,用 Shell 脚本发送警报
这个脚本在启动时在后台运行,每分钟检查一次电池状态,然后在电池电量超过 95% 或放电时电量低于 20% 时发送通知。
警报会直到你的电池电量超过 20% 或低于 95% 时才会停止。
$ sudo vi /opt/scripts/battery-status.sh #!/bin/bash while true do battery_level=`acpi -b | grep -P -o '[0-9]+(?=%)'` if [ $battery_level -ge 95 ]; then notify-send "Battery Full" "Level: ${battery_level}%" paplay /usr/share/sounds/freedesktop/stereo/suspend-error.oga elif [ $battery_level -le 20 ]; then notify-send --urgency=CRITICAL "Battery Low" "Level: ${battery_level}%" paplay /usr/share/sounds/freedesktop/stereo/suspend-error.oga fi sleep 60 done
脚本完成后,设置可执行权限:
$ sudo chmod +x /opt/scripts/battery-status.sh
最后,将该脚本添加到用户配置文件的底部。对于全局范围来说,你需要在 /etc/profile
文件中添加该脚本。
$ vi /home/magi/.profile /opt/scripts/battery-status.sh &
重启你的 Linux 系统来检查这点。
$ sudo reboot
方法 2:当电池充电(高于 95%)或放电(低于 20%)时发送通知的 Shell 脚本
这个脚本与上面的脚本类似,但它是由交流适配器负责。
如果你插上了交流适配器,而且电池的电量超过 95%,它就会发出一个带有声音的通知,但是这个通知不会停止,直到你拔掉交流适配器。

如果你拔掉交流适配器,你将永远不会再看到通知,直到你的电池电量下降到 20%。

$ sudo vi /opt/scripts/battery-status-1.sh #!/bin/bash while true do export DISPLAY=:0.0 battery_level=`acpi -b | grep -P -o '[0-9]+(?=%)'` if on_ac_power; then if [ $battery_level -ge 95 ]; then notify-send "Battery Full" "Level: ${battery_level}% " paplay /usr/share/sounds/freedesktop/stereo/suspend-error.oga fi else if [ $battery_level -le 20 ]; then notify-send --urgency=CRITICAL "Battery Low" "Level: ${battery_level}%" paplay /usr/share/sounds/freedesktop/stereo/suspend-error.oga fi fi sleep 60 done
脚本完成后,设置执行权限:
$ sudo chmod +x /opt/scripts/battery-status-1.sh
最后将脚本添加到用户配置文件的底部。对于全局范围来说,你需要在 /etc/profile
文件中添加该脚本。
$ vi /home/magi/.profile /opt/scripts/battery-status-1.sh &
重启系统来检查:
$ sudo reboot
参考:stackexchange
via: https://www. 2daygeek.com/linux-low- full-charge-discharge-battery-notification/
作者:Magesh Maruthamuthu 选题: lujun9972 译者: geekpi 校对: wxy
本文由 LCTT 原创编译,Linux中国 荣誉推出
Recommend
-
62
电池又出问题 三星Note 8电量耗尽后无法充电
-
6
MagSafe外接电池体验:缓解电量焦虑,iPhone 12用户的绝佳拍档!-极果 MagSafe外接电池体验:缓解电量焦虑,iPhone 12用户...
-
6
汽车 为防LG电池起火,雪佛兰将电量缩减至8成,苹果会因此换供应商吗 电科技葆康11-22 13:55 94091 此前,雪佛兰Bolt EV出现了多起起火事故,为此通用...
-
7
手机开启低电量模式可以保护电池吗? 新酷产品第一时间免费试玩,还有众多优质达人分享独...
-
5
小米电池电量自研芯片曝光!小米12 Ultra有望首发 【手机中国新闻】最近几年,
-
6
苹果在“查找”App中移除了AirTag电池电量显示 2022年07月22日06:36 IT之家
-
7
iPhone低电量模式下新增关闭状态栏电池百分比选项 财经网科技8月16日讯,据IT之家消息,今天苹果发布了iOS16Be...
-
7
宁德时代麒麟电池已量产,同体积比4680电量高13% 澎湃新闻 发表于 2023年03月21日 08:51...
-
6
汽车 极氪001俩月没开电池报废,官方:电量耗尽造成损坏不在保修范围 电科技佳伦05-18 17:07 362 近期,一名极氪001...
-
6
苹果iOS17.2.1正式版发布 修复iPhone电池电量消耗过快问题 ...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK