Приведенная ниже команда выводит много состояния и статистическую информацию о батарее. /org/...Путь может быть найден с помощью команды upower -e( --enumerate).
native-path: /sys/devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0
vendor: NOTEBOOK
model: BAT
serial: 0001
power supply: yes
updated: Thu Feb 9 18:42:15 2012 (1 seconds ago)
has history: yes
has statistics: yes
battery
present: yes
rechargeable: yes
state: charging
energy: 22.3998 Wh
energy-empty: 0 Wh
energy-full: 52.6473 Wh
energy-full-design: 62.16 Wh
energy-rate: 31.6905 W
voltage: 12.191 V
time to full: 57.3 minutes
percentage: 42.5469%
capacity: 84.6964%
technology: lithium-ion
History (charge):
1328809335 42.547 charging
1328809305 42.020 charging
1328809275 41.472 charging
1328809245 41.008 charging
History (rate):
1328809335 31.691 charging
1328809305 32.323 charging
1328809275 33.133 charging
Вы можете использовать такие инструменты, как grep, чтобы получить только ту информацию, которая вам нужна, из всего этого вывода.
Один простой способ: добавление вышеуказанной команды в
grep -E "state|to\ full|percentage"
выходы:
state: charging
time to full: 57.3 minutes
percentage: 42.5469%
Если вам часто требуется выполнить эту команду, вы можете создать псевдоним Bash для всей команды. Пример:
alias bat='upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "state|to\ full|percentage"'
Добавьте это в конец вашего файла .bashrc, и вы можете в любой момент набрать «bat» в терминале.
Существует также команда upower -d( --dump), которая отображает информацию обо всех доступных источниках питания, таких как батареи ноутбука, внешние мыши и т. Д.
upower --enumerateможет быть полезно, если вы не уверены, как использовать upower.
Landroni
5
@landroni И сокращенная опция заключается в том upower -e, что эта команда перечисляет доступные пути для upower -i .... Если вы ленивы и просто хотите получить список всех устройств, используйте upower -d( upower --dump).
Лекенстейн
1
На самом деле. Я думаю, что это было бы полезным дополнением к самому ответу, так как, когда я впервые попытался использовать, upowerя сразу заблудился.
Landroni
1
@landroni Хорошо, я обновил ответ. Не стесняйтесь редактировать его, если у вас есть больше связанных дополнений.
Лекенстейн
8
Еще одна строчка может бытьupower -i $(upower -e | grep BAT) | grep --color=never -E "state|to\ full|to\ empty|percentage"
Уилф
124
Дружеское напоминание : начиная с ядра Linux 2.6.24 использование /procдля хранения информации ACPI не рекомендуется и не рекомендуется .
Теперь мы рекомендуем использовать -> /sys/class/power_supply/BAT0.
ОБНОВЛЕНИЕ: Linux 3.19 и далее, мы должны посмотреть на следующий каталог -> /sys/class/power_supply/BAT1/
Например, проверка емкости и статуса в Arch Linux под управлением Linux 4.20 ->
# uname -aLinux netbook 4.20.1-arch1-1-ARCH #1 SMP PREEMPT Wed Jan 9 20:25:43 UTC 2019 x86_64 GNU/Linux# cat /sys/class/power_supply/BAT1/capacity99# cat /sys/class/power_supply/BAT1/statusCharging
В частности, /sys/class/power_supply/BAT0/capacityкажется, чтобы показать текущий процент заряда.
thomasa88
Устаревший ... это все еще работает?
neverMind9
3
+1, это должен быть принятый ответ, поскольку он не зависит от дополнительного программного обеспечения, которое может быть не установлено, и не требуется для ответа на этот вопрос. @ neverMind9: Я не знаю, что вы имеете в виду /proc, устарела, но /sysотлично работает для меня, даже в ядре 4.20.
Comfreak
1
@ Comfreak работает для меня, на самом деле.
neverMind9
1
Мало того, что это должен быть ответ получателя, но получение данных может быть достигнуто с помощью любого языка программирования, который имеет readфункцию, подобную PHP, $capacity = trim(file_get_contents("/sys/class/power_supply/BAT0/capacity"));что делает его очень простым и не зависящим от каких-либо внешних зависимостей.
Амин НАИРИ
67
Сначала установите с acpiпомощью этой команды,
sudo apt-get install acpi
Затем запустите:
acpi
Образец вывода:
Battery 0: Discharging, 61%, 01:10:12 remaining
Или для более подробного вывода, которое постоянно обновляется:
watch --interval=5 acpi -V
Выход:
Каждые 5.0s: acpi -V Ср 8 января 15:45:35 2014
Батарея 0: полная, 100%
Адаптер 0: онлайн
Тепловой 0: хорошо, 44.0 градусов C
Тепловой 0: точка срабатывания 0 переключается в критический режим при температуре 127,0 градусов C
Тепловой 0: точка срабатывания 1 переключается в горячий режим при температуре 127,0 градусов C
Охлаждение 0: intel_powerclamp нет информации о состоянии
Охлаждение 1: pkg-temp-0 информация о состоянии отсутствует
Охлаждение 2: LCD 100 из 100
Охлаждение 3: LCD 100 из 100
Охлаждение 4: Процессор 0 из 10
Охлаждение 5: Процессор 0 из 10
Охлаждение 6: Процессор 0 из 10
Охлаждение 7: Процессор 0 из 10
Охлаждение 8: Процессор 0 из 10
Охлаждение 9: Процессор 0 из 10
Охлаждение 10: Процессор 0 из 10
Охлаждение 11: Процессор 0 из 10
использование /procдля хранения информации ACPI не рекомендуется и не рекомендуется с 2.6.24. Теперь это в /sys/class/power_supply/BAT0.
Терри Ван
14
Я немного опоздал на вечеринку, но вот мой маленький вклад. Основываясь на предыдущих ответах, я сделал простой скрипт:
#!/bin/bash
# Description: Battery charge in percentage
grep POWER_SUPPLY_CAPACITY /sys/class/power_supply/BAT1/uevent
Выход для выполнения этого (./batpower) будет примерно таким:
POWER_SUPPLY_CAPACITY=23
NB: номер батареи может отличаться для вас, в моем случае это BAT1, но вы всегда можете узнать его, перейдя в / sys / class / power_supply или как Lekensteyn упомянул через upower -e
Моя машина: Ubuntu 13.10, 3.11.0
Замените BAT1 в приведенном выше коде bash на BAT0, если у вас более старая версия Ubuntu, т.е. 13.04 или более поздняя.
УЛУЧШЕННЫЙ СЦЕНАРИЙ: С момента моего первоначального поста, я сделал небольшое улучшение в сценарии:
#!/bin/bash
# Description: Battery charge in percentage
if [ -f /sys/class/power_supply/BAT1/uevent ]
then grep POWER_SUPPLY_CAPACITY /sys/class/power_supply/BAT1/uevent
else echo "Battery isn't present"
fi
Как всегда, обратите внимание на пробелы с bash. Это все говорит само за себя. Если батарея присутствует, она появится, если нет - скрипт скажет вам об этом. Теперь перейдите к файлу .bashrc и добавьте $ (batpower) к вашему приглашению. Вот мой промо:
Обновите свой терминал или откройте новую вкладку или окно, и теперь вы можете постоянно контролировать заряд батареи в терминале! в том числе tty! Да хвалится сценарий!
Вы должны проверить /sys/class/power_supply/BAT0и /sys/class/power_supply/BAT1... Это может быть либо. И вы должны использовать этот путь ( /sys/class/power_supply/BAT#).
Dylnmc
В моем нетбуке Ubuntu 12.04 (после перехода на BAT0) у меня нет строки POWER_SUPPLY_CAPACITY. Похоже, я мог бы рассчитать его, исходя из значений POWER_SUPPLY_CHARGE_FULL и POWER_SUPPLY_CHARGE_NOW.
mwfearnley
Проголосовал, но Бэтмен (Battery Manager) подсознательно имеет более приятное звучание, чем Batpower :) Если серьезно, интересно, что вы писали в AskUbuntu в 2014 году, и насколько вы отличаетесь сегодня.
WinEunuuchs2Unix
@ WinEunuuuchs2Unix Да, я немного изменился с тех пор, как начал, изучил несколько новых трюков. у бэтмена было бы хорошее кольцо, но оно, вероятно, защищено авторским правом;)
Сергей Колодяжный
10
Вы можете сделать это без установки дополнительных пакетов:
Я собирался предложить, acpiно после прочтения, что это не работает в 11.10, у меня была идея.
Пожалуйста, введите это в свой терминал:
ls /proc/acpi/battery/BAT0 илиBAT1
Если вы получили «файл или каталог не найден», это не сработает.
Но если он перечисляет файлы, то вот скрипт [вставьте его в / usr / games / или другой каталог в $ PATH и запустите sudo chmod +x /usr/games/batterypercent, или как там его назовите], который я только что написал для вас, который даст вам приблизительный процент заряда батареи [Смотри ниже]:
(Обратите внимание, если он еще не установлен, установите программу calcиз репозитория: sudo apt-get install apcalc)
Я проверил этот скрипт на своем ноутбуке. Я говорю « оценка выше», потому что acpiпоказывает 93% заряда батареи, а мой сценарий показывает 90% заряда батареи, поэтому попробуйте этот сценарий по отношению к проценту батареи вашего графического интерфейса и посмотрите, насколько он отключен. В моем случае он, по-видимому, на 3% ниже, чем процент acpi. В этом случае вы можете добавить эту строку прямо перед последней строкой:, percent=$((percent + 3))где «3» - это процент, на который она низка.
** В моем lenovo аккумулятор указан как BAT1, попробуйте тоже. (12.04 LTS)
Мэтт, попробовал ваше предложение, получил «Нет файла или каталога»
Джо
Ага ... хорошо, я почти уверен, что именно поэтомуacpi он не работает, потому что я думаю, что 11.10 не поддерживает функции ACPI вашего ноутбука [батарея и т. Д.]. Я думаю, что я испытал нечто подобное при обновлении в прошлом. Я все еще на 11.04, хотя. Извините, что это не сработало для вас :(
Мэтт
Итак, просто любопытно, вы можете вставить вывод ls /proc/acpi/? Спасибо
Вот что я использую. Он просто смотрит на разницу между полным зарядом и текущим зарядом, а также видит, падает ли заряд, и в этом случае он использует уведомление для предупреждения пользователя.
#!/bin/bash
#
# experimental battery discharge alerter
#
nsecs=3 # loop sleep time between readings
#
ful=$(cat /sys/class/power_supply/BAT0/energy_full)
#
oldval=0
while true
do
cur=$(cat /sys/class/power_supply/BAT0/energy_now)
dif="$((ful - cur))"
slope="$((cur - oldval))"
if [ "$slope" -lt 0 ]
then
echo "*** discharging!"
notify-send -u critical -i "notification-message-IM" "discharging"
fi
oldval=$cur
sleep $nsecs
done
Это поможет не всем, но помогло мне - я использую byobu всякий раз, когда использую терминал, и батарея - это один из вариантов панели уведомлений о состоянии.
$ upower -i $(upower -e | grep 'BAT') | grep -E "state|to\ full|percentage"
Ответы:
Приведенная ниже команда выводит много состояния и статистическую информацию о батарее.
/org/...
Путь может быть найден с помощью командыupower -e
(--enumerate
).Пример вывода:
Вы можете использовать такие инструменты, как grep, чтобы получить только ту информацию, которая вам нужна, из всего этого вывода.
Один простой способ: добавление вышеуказанной команды в
выходы:
Если вам часто требуется выполнить эту команду, вы можете создать псевдоним Bash для всей команды. Пример:
Добавьте это в конец вашего файла .bashrc, и вы можете в любой момент набрать «bat» в терминале.
Существует также команда
upower -d
(--dump
), которая отображает информацию обо всех доступных источниках питания, таких как батареи ноутбука, внешние мыши и т. Д.источник
upower --enumerate
может быть полезно, если вы не уверены, как использоватьupower
.upower -e
, что эта команда перечисляет доступные пути дляupower -i ...
. Если вы ленивы и просто хотите получить список всех устройств, используйтеupower -d
(upower --dump
).upower
я сразу заблудился.upower -i $(upower -e | grep BAT) | grep --color=never -E "state|to\ full|to\ empty|percentage"
Дружеское напоминание : начиная с ядра Linux 2.6.24 использование
/proc
для хранения информации ACPI не рекомендуется и не рекомендуется .Теперь мы рекомендуем использовать ->
/sys/class/power_supply/BAT0
.ОБНОВЛЕНИЕ: Linux 3.19 и далее, мы должны посмотреть на следующий каталог ->
/sys/class/power_supply/BAT1/
Например, проверка емкости и статуса в Arch Linux под управлением Linux 4.20 ->
источник
/sys/class/power_supply/BAT0/capacity
кажется, чтобы показать текущий процент заряда./proc
, устарела, но/sys
отлично работает для меня, даже в ядре 4.20.read
функцию, подобную PHP,$capacity = trim(file_get_contents("/sys/class/power_supply/BAT0/capacity"));
что делает его очень простым и не зависящим от каких-либо внешних зависимостей.Сначала установите с
acpi
помощью этой команды,Затем запустите:
Образец вывода:
Или для более подробного вывода, которое постоянно обновляется:
Выход:
источник
Благодаря @Wilf это работает на моем Ubuntu 17.10 на Lenovo Yoga 720:
Выход:
Или просто числовое значение с этим одним вкладышем
источник
battery
вместо того,BAT
чтобы заставить его работать. Я нашел это сupower --enumerate
.battery
работ в Ubuntu, поэтому я изменил его сBAT
Достаточно набрать команду
Для получения подробной информации вы можете ввести
Мне не нужно было устанавливать какие-либо пакеты раньше.
Система: Debian 7.2 64bit
источник
Вот статья о пакете, который может проверить время автономной работы в командной строке.
В общем, все, что вам нужно сделать, это:
источник
Может быть, вы можете попробовать:
cat /proc/acpi/battery/BAT0/state
cat /proc/acpi/battery/BAT0/info
источник
/proc
для хранения информации ACPI не рекомендуется и не рекомендуется с 2.6.24. Теперь это в/sys/class/power_supply/BAT0
.Я немного опоздал на вечеринку, но вот мой маленький вклад. Основываясь на предыдущих ответах, я сделал простой скрипт:
Выход для выполнения этого (./batpower) будет примерно таким:
NB: номер батареи может отличаться для вас, в моем случае это BAT1, но вы всегда можете узнать его, перейдя в / sys / class / power_supply или как Lekensteyn упомянул через upower -e
Моя машина: Ubuntu 13.10, 3.11.0
Замените BAT1 в приведенном выше коде bash на BAT0, если у вас более старая версия Ubuntu, т.е. 13.04 или более поздняя.
УЛУЧШЕННЫЙ СЦЕНАРИЙ: С момента моего первоначального поста, я сделал небольшое улучшение в сценарии:
Как всегда, обратите внимание на пробелы с bash. Это все говорит само за себя. Если батарея присутствует, она появится, если нет - скрипт скажет вам об этом. Теперь перейдите к файлу .bashrc и добавьте $ (batpower) к вашему приглашению. Вот мой промо:
Обновите свой терминал или откройте новую вкладку или окно, и теперь вы можете постоянно контролировать заряд батареи в терминале! в том числе tty! Да хвалится сценарий!
источник
/sys/class/power_supply/BAT0
и/sys/class/power_supply/BAT1
... Это может быть либо. И вы должны использовать этот путь (/sys/class/power_supply/BAT#
).Вы можете сделать это без установки дополнительных пакетов:
Эта команда взята из источника Бёбу . Это может быть хорошим кандидатом на псевдоним Bash .
источник
/sys/class/power_supply/BAT0/
Запустите следующую команду в терминале для получения подробной информации:
Если вы просто хотите, чтобы государство сделало:
источник
Установите acpi, затем используйте
watch
для непрерывного мониторинга через командную строку.Например
watch --interval=5 acpi -V
покажет информацию, такую как ниже, и будет обновляться каждые 5 секунд.
Вопрос в том, зачем кому-то это делать? Ну, у меня есть ноутбук с битым ЖК-экраном, который я сейчас использую в качестве своего битторрента.
источник
Это сделало работу для меня в Ubuntu 14.04:
источник
Я собирался предложить,
acpi
но после прочтения, что это не работает в 11.10, у меня была идея.Пожалуйста, введите это в свой терминал:
ls /proc/acpi/battery/BAT0
илиBAT1
Если вы получили «файл или каталог не найден», это не сработает.
Но если он перечисляет файлы, то вот скрипт [вставьте его в / usr / games / или другой каталог в $ PATH и запустите
sudo chmod +x /usr/games/batterypercent
, или как там его назовите], который я только что написал для вас, который даст вам приблизительный процент заряда батареи [Смотри ниже]:(Обратите внимание, если он еще не установлен, установите программу
calc
из репозитория:sudo apt-get install apcalc
)Я проверил этот скрипт на своем ноутбуке. Я говорю « оценка выше», потому что
acpi
показывает 93% заряда батареи, а мой сценарий показывает 90% заряда батареи, поэтому попробуйте этот сценарий по отношению к проценту батареи вашего графического интерфейса и посмотрите, насколько он отключен. В моем случае он, по-видимому, на 3% ниже, чем процент acpi. В этом случае вы можете добавить эту строку прямо перед последней строкой:,percent=$((percent + 3))
где «3» - это процент, на который она низка.** В моем lenovo аккумулятор указан как BAT1, попробуйте тоже. (12.04 LTS)
источник
acpi
он не работает, потому что я думаю, что 11.10 не поддерживает функции ACPI вашего ноутбука [батарея и т. Д.]. Я думаю, что я испытал нечто подобное при обновлении в прошлом. Я все еще на 11.04, хотя. Извините, что это не сработало для вас :(ls /proc/acpi/
? СпасибоАналогичный скрипт без calc или apcalc:
источник
Вот что я использую. Он просто смотрит на разницу между полным зарядом и текущим зарядом, а также видит, падает ли заряд, и в этом случае он использует уведомление для предупреждения пользователя.
источник
Мы можем повторить только процент с этой командой
65%
в случае, если вам нужно извлечь это значение
источник
Это поможет не всем, но помогло мне - я использую byobu всякий раз, когда использую терминал, и батарея - это один из вариантов панели уведомлений о состоянии.
источник
Вы можете ввести:
или же
источник
источник
cat: /proc/acpi/ac_adapter/AC0/state: No such file or directory