iis服务器助手广告
返回顶部
首页 > 资讯 > 操作系统 >Linux中怎么在电池充满或低电量时获得电池状态通知
  • 784
分享到

Linux中怎么在电池充满或低电量时获得电池状态通知

2023-06-15 16:06:45 784人浏览 独家记忆
摘要

这篇文章主要介绍了linux中怎么在电池充满或低电量时获得电池状态通知,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。对于类 Unix 用户来说,Linux 笔记本是不错的选择

这篇文章主要介绍了linux中怎么在电池充满或低电量时获得电池状态通知,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

对于类 Unix 用户来说,Linux 笔记本是不错的选择,但它经常会耗尽电池。我试过很多 Linux 操作系统,但没有像 windows 那样电池寿命长。

充电时间长了会对电池造成损害,所以在电池 100% 充满时要拔掉电源线。电池充电或放电时没有默认的应用程序来通知,需要安装第三方应用来通知你。

为此,我通常会安装 Battery Monitor,但它已经被废弃,所以我创建了一个 shell 脚本来获取通知。

笔记本电池充放电状态可以通过以下两个命令来识别。

使用 acpi 命令。

$ acpi -bBattery 0: Discharging, 71%, 00:58:39 remaining

使用 upower 命令。

$ upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep -w 'state|percentage' | awk '{print $2}'discharging64%

方法 1:当电池电量高于 95% 或低于 20% 时,用 Shell 脚本发送警报

这个脚本在启动时在后台运行,每分钟检查一次电池状态,然后在电池电量超过 95% 或放电时电量低于 20% 时发送通知。

警报会直到你的电池电量超过 20% 或低于 95% 时才会停止。

$ sudo vi /opt/scripts/battery-status.sh
#!/bin/bashwhile truedo  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 60done

脚本完成后,设置可执行权限:

$ 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%,它就会发出一个带有声音的通知,但是这个通知不会停止,直到你拔掉交流适配器。

Linux中怎么在电池充满或低电量时获得电池状态通知

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

Linux中怎么在电池充满或低电量时获得电池状态通知

$ 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 60done

脚本完成后,设置执行权限:

$ sudo chmod +x /opt/scripts/battery-status-1.sh

最后将脚本添加到用户配置文件的底部。对于全局范围来说,你需要在 /etc/profile 文件中添加该脚本。

$ vi /home/magi/.profile /opt/scripts/battery-status-1.sh &

重启系统来检查:

$ sudo reboot

感谢你能够认真阅读完这篇文章,希望小编分享的“Linux中怎么在电池充满或低电量时获得电池状态通知”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网操作系统频道,更多相关知识等着你来学习!

--结束END--

本文标题: Linux中怎么在电池充满或低电量时获得电池状态通知

本文链接: https://www.lsjlt.com/news/280871.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Linux中怎么在电池充满或低电量时获得电池状态通知
    这篇文章主要介绍了Linux中怎么在电池充满或低电量时获得电池状态通知,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。对于类 Unix 用户来说,Linux 笔记本是不错的选择...
    99+
    2023-06-15
  • 怎么获取Android设备电池电量状态
    这篇文章主要介绍“怎么获取Android设备电池电量状态”,在日常操作中,相信很多人在怎么获取Android设备电池电量状态问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么获取Android设备电池电量状态...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作