Question Comment vérifier l'état de la batterie à l'aide du terminal?


Je voudrais une commande qui vérifie l'état de la batterie via le terminal


268
2017-10-20 01:24


origine


$ upower -i $(upower -e | grep 'BAT') | grep -E "state|to\ full|percentage" - Jake Berger


Réponses:


La commande ci-dessous affiche un état de lot et des informations statistiques sur la batterie. le /org/... chemin peut être trouvé avec la commande upower -e (--enumerate).

upower -i /org/freedesktop/UPower/devices/battery_BAT0

Exemple de sortie:

  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

Vous pouvez utiliser des outils tels que grep pour obtenir uniquement les informations souhaitées dans toutes ces sorties.

Un moyen simple: transférer la commande ci-dessus dans

grep -E "state|to\ full|percentage"

les sorties:

state:               charging
time to full:        57.3 minutes
percentage:          42.5469%

Si vous souhaitez souvent exécuter cette commande, vous pouvez créer un alias Bash pour toute la commande. Exemple:

alias bat='upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "state|to\ full|percentage"'

Ajoutez cela à la fin de votre fichier .bashrc, et vous pouvez taper «bat» à tout moment, dans le terminal.

Il y a aussi upower -d (--dump) qui affiche des informations sur toutes les ressources électriques disponibles, telles que les batteries d’ordinateurs portables, les souris externes, etc.


280
2018-02-09 17:42



upower --enumerate peut être utile si vous ne savez pas comment utiliser upower. - landroni
@landroni Et l'option de sténographie est upower -e, cette commande répertorie les chemins disponibles pour upower -i .... Si vous êtes paresseux et que vous voulez juste une liste de tous les appareils, utilisez upower -d (upower --dump). - Lekensteyn
Effectivement. Je pense que ce serait un ajout utile à la réponse elle-même, comme lorsque j'ai essayé d'utiliser upower Je me suis immédiatement perdu. - landroni
@landroni Bon point, j'ai mis à jour la réponse. N'hésitez pas à le modifier si vous avez d'autres ajouts connexes. - Lekensteyn
Un autre one-liner pourrait être upower -i $(upower -e | grep BAT) | grep --color=never -E "state|to\ full|to\ empty|percentage" - Wilf


Un rappel amical: depuis le noyau Linux 2.6.24 en utilisant /proc pour stocker les informations ACPI a été découragé et déconseillé.

Maintenant, nous sommes encouragés à utiliser -> /sys/class/power_supply/BAT0.

UPDATE: Linux 3.19 et suivants, nous devrions regarder le répertoire suivant -> /sys/class/power_supply/BAT1/

Par exemple capacité -> cat /sys/class/power_supply/BAT1/capacity statut -> cat /sys/class/power_supply/BAT1/status


99
2018-06-17 08:35



Plus précisément, /sys/class/power_supply/BAT0/capacity semble indiquer le pourcentage de charge actuel. - thomasa88
Déconseillé… ça marche toujours? - neverMind9


Première installation acpi en exécutant cette commande,

sudo apt-get install acpi

Puis lancez:

acpi

Sortie de l'échantillon:

Battery 0: Discharging, 61%, 01:10:12 remaining

Ou pour une sortie plus détaillée qui met à jour en permanence:

watch --interval=5 acpi -V

Sortie:

Tous les 5.0s: acpi -V mer. Janv. 8 15:45:35 2014

Batterie 0: plein, 100%
Adaptateur 0: en ligne
Thermal 0: ok, 44.0 degrés C
Thermique 0: le point de déclenchement 0 passe en mode critique à une température de 127,0 degrés C
Thermique 0: le point de déclenchement 1 passe en mode chaud à une température de 127,0 degrés C
Refroidissement 0: intel_powerclamp Aucune information d'état disponible
Refroidissement 1: pkg-temp-0 aucune information d'état disponible
Refroidissement 2: LCD 100 sur 100
Refroidissement 3: LCD 100 sur 100
Refroidissement 4: Processeur 0 sur 10
Refroidissement 5: Processeur 0 sur 10
Refroidissement 6: Processeur 0 sur 10
Refroidissement 7: Processeur 0 sur 10
Refroidissement 8: Processeur 0 sur 10
Refroidissement 9: Processeur 0 sur 10
Refroidissement 10: Processeur 0 sur 10
Refroidissement 11: Processeur 0 sur 10

59
2017-11-24 20:20





Grâce à @Wilf, cela fonctionne sur mon Ubuntu 17.10 sur Lenovo Yoga 720:

upower -i $(upower -e | grep '/battery') | grep --color=never -E "state|to\ full|to\ empty|percentage"

Sortie:

state:               fully-charged
percentage:          100%

Ou juste la valeur numérique avec cette seule ligne

upower -i $(upower -e | grep '/battery') | grep --color=never -E percentage|xargs|cut -d' ' -f2|sed s/%//

26
2017-07-02 08:56



Sur Fedora 23 Je devais chercher battery au lieu de BAT pour que ça marche. J'ai trouvé ça avec upower --enumerate. - erik
grep pour battery fonctionne dans Ubuntu aussi, donc je l'ai changé de BAT - rubo77


Il suffit de taper la commande

acpi

Pour des informations détaillées, vous pouvez taper

acpi -V

Je n'ai pas eu à installer de paquet avant.

Système: Debian 7.2 64bit


23
2017-07-26 14:36





Peut-être que vous pouvez essayer:

cat /proc/acpi/battery/BAT0/state

cat /proc/acpi/battery/BAT0/info


15
2017-10-20 05:36



en utilisant /proc pour stocker les informations ACPI est déconseillé et déconseillé depuis le 2.6.24. Maintenant c'est dans /sys/class/power_supply/BAT0. - Terry Wang


Ici est un article sur un package qui peut vérifier la durée de vie de votre batterie sur la ligne de commande.

Fondamentalement, tout ce que vous avez à faire est de:

sudo apt-get install acpi
acpi -V

15
2018-06-10 04:57





Je suis un peu en retard à la fête mais voici ma petite contribution. Sur la base des réponses précédentes, j'ai créé un script simple:

#!/bin/bash
# Description: Battery  charge in percentage

grep POWER_SUPPLY_CAPACITY /sys/class/power_supply/BAT1/uevent

La sortie pour exécuter ceci (./batpower) va être quelque chose comme ceci:

POWER_SUPPLY_CAPACITY=23

N.B. : le numéro de batery peut être différent pour vous, dans mon cas, il s'agit de BAT1, mais vous pouvez toujours le trouver en allant sur / sys / class / power_supply ou comme Lekensteyn mentionné dans upower -e

Ma machine: Ubuntu 13.10, 3.11.0

Remplacer BAT1 dans le code bash ci-dessus pour BAT0 si vous avez une ancienne version Ubuntu, c'est-à-dire 13.04 ou ultérieure.

SCRIPT AMÉLIORÉ: Depuis mon post original, j'ai apporté une petite amélioration au script:

#!/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 

Comme toujours, faites attention aux espaces avec bash. Ceci est tout à fait explicite. Si la batterie est présente, elle apparaîtra, sinon - le script vous le dira. Maintenant, allez dans votre fichier .bashrc et ajoutez $ (batpower) à votre invite. Voici le mien promis:

PS1='[$(batpower)]\n${debian_chroot:+($debian_chroot)}[*\u@Ubuntu*]:\w\$ ' 

Mettez à jour votre terminal ou ouvrez un nouvel onglet ou une nouvelle fenêtre, et maintenant vous pouvez surveiller la charge de la batterie en permanence dans le terminal! y compris tty! Que le script soit loué! enter image description here


11
2017-07-23 03:23



Vous devez vérifier pour /sys/class/power_supply/BAT0 et /sys/class/power_supply/BAT1 ... ça peut être soit. Et vous devriez utiliser ce chemin (/sys/class/power_supply/BAT#). - dylnmc
Dans mon netbook Ubuntu 12.04 (après avoir changé pour BAT0), je ne semble pas avoir une ligne POWER_SUPPLY_CAPACITY. Il semble que je puisse le calculer à partir des valeurs POWER_SUPPLY_CHARGE_FULL et POWER_SUPPLY_CHARGE_NOW. - mwfearnley


Exécutez la commande suivante dans un terminal pour obtenir des informations détaillées:

cat /proc/acpi/battery/BAT0/info

Si vous voulez simplement que l'État fasse:

cat /proc/acpi/battery/BAT0/state

9
2018-04-19 12:20



Oui, ça a fonctionné :) Merci! - infoquad