有什么办法可以在电池充满时收到通知吗?

有什么办法可以在电池充满时收到通知吗?

我在笔记本电脑上使用 Ubuntu 12.04,我想知道是否有办法在电池充满时收到通知。

答案1

此功能在旧版 gnome2 中存在,但在最新版 gnome 中缺失。Gnome 电源管理器应该在电池充满时发出通知,但它没有(这可能是一个错误)。我在 dconf 中也找不到任何选项。在我看来,实现此目的的唯一方法是通过 cron 作业定期检查电池是否充满。

首先打开终端并ls /proc/acpi/battery/.输入C241。您的可能不同(通常是 batt0 或 batt1)。还要检查交流适配器的类型ls /proc/acpi/ac_adapter。其C240对我来说。打开 gedit 并复制以下脚本。

请记住用您的电池类型和交流适配器替换 C241 和 C240。

#!/bin/bash

cd ~/.scripts
notification=$(grep 'notification:' notification|awk '{print $2}')

cd /proc/acpi/ac_adapter/C240;
power=$(grep 'state:' state|awk '{print $2}')
s1="$power"

s2="charged"
s3="on-line"
s4="on"

export DISPLAY=:0

if [ "$s1" = "on-line" ]; then
  cd /proc/acpi/battery/C241;
  state=$(grep 'charging state:' state|awk '{print $3}')
  if [ $state = $s2 ] && [ "$notification" = "$s4" ];
    then
            notify-send  --urgency=critical "Power Manager" "battery is full" -i battery_full
            echo "notification: off" >~/.scripts/notification

    fi

else
  if [ $notification != "on" ]; then
    echo "notification: on" >~/.scripts/notification
  fi
fi

将文件另存为电池满载在 ~/.scripts (或任何你喜欢的地方)。使文件可执行chmod a+x batteryfull.sh

在终端类型上echo "notification: on" >~/.scripts/notification。同时在 ~/.profile 末尾添加相同的行。

安装 gnome-schedule ( sudo apt-get install gnome-schedule)。启动它,选择新任务并选择“定期启动的任务”。在命令部分输入脚本文件的完整路径。在我的情况下是 ~/.scripts/batteryfull.sh。您可以设置 corn-job 的持续时间为每分钟或每 5 分钟。单击应用。您可以通过crontab -l在终端中输入来检查正在运行的作业。

gnome-时间表

您可以通过添加 gnome-schedule 作为启动应用程序在每次启动时运行此脚本(在您的情况下可能不需要)。

注意:这可能不是实现此目的的完美方法,但它确实有效。到目前为止,我可以用我对 Bash 脚本的一点了解做这么多。如果我找到更好的方法,我会改进脚本。

相关内容