Как контролировать состояние батареи и всплывающее уведомление?

Кроме того, если ваши окна используют UEFI, обязательно загрузите диск USB с помощью ubuntu на нем под UEFI. Мой BIOS предложил мне оба варианта при выборе usb в качестве загрузочного устройства. Только при выборе UEFI он также распознает мои предварительно установленные окна. Вы можете прочитать больше здесь

Несвязанный, но, возможно, также полезный: следующая проблема, с которой я столкнулся, заключалась в том, что «grub-efi-amd64-signed не удалось установить», который был легко решен путем подключения к Интернету во время установки ,

1
задан 13 April 2017 в 15:24

1 ответ

Я сделал аналогичный сценарий для моего Vaio, чтобы уведомить меня, когда аккумулятор полностью зарядится. Я использовал UPOWER, чтобы предоставить мне обновления состояния батареи и извлечь из них раздел. Вот код:

#!/bin/bash

while true;do 

STATE=$( upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep "state:" | cut -b 26- )

if [ $STATE = "fully-charged" ]
then 

zenity --info --text "Battery Full!"
break

fi

done
1
ответ дан 23 May 2018 в 21:54
  • 1
    Поскольку ваш скрипт довольно короткий, было бы неплохо, если бы вы скопировали и ввели его содержимое здесь тоже, чтобы читателям не нужно было щелкнуть еще одну ссылку, чтобы получить ваш скрипт. – edwinksl 10 July 2016 в 21:24
  • 2
    Если я могу предложить, есть несколько улучшений, которые вы можете сделать для своего сценария. Один, избавиться от grep "state:" | cut -b 26- и использовать awk '/state:/{print $2}' . Использует одно и то же, а не две команды. Меньше системных вызовов, более высокая производительность. Во-вторых, добавьте sleep 0.25 в конец цикла while. В то время как циклы, которые непрерывно выполняются, будут обеспечивать высокий уровень использования ЦП. В противном случае, хороший сценарий, хорошая работа! – Sergiy Kolodyazhnyy 11 July 2016 в 08:19
  • 3
    Спасибо за предложения. Заведет их на работу и внесет изменения здесь! – Rubal 11 July 2016 в 08:36
  • 4
    @Rubal также, пожалуйста, прибегайте к цитированию переменных. В этом случае это нормально, но когда переменная имеет несколько слов, тест может потерпеть неудачу, лучше использовать "$STATE" – Sergiy Kolodyazhnyy 11 July 2016 в 08:47

Другие вопросы по тегам:

Похожие вопросы: