Wie überprüfe ich den Batteriestatus über das Terminal?


Zur akzeptierten Antwort gehen


Ich hätte gerne einen Befehl, der den Batteriestatus im Terminal anzeigt.


324





2011-10-20




Anzahl der Antworten: 19


Der folgende Befehl gibt einen Chargenstatus und statistische Informationen über die Batterie aus. Den /org/... Pfad finden Sie mit dem Befehl upower -e ( --enumerate ).

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

Beispielausgabe:

   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
 

Sie können Tools wie grep verwenden, um genau die Informationen zu erhalten, die Sie von all diesen Ausgaben benötigen.

Eine einfache Möglichkeit: Leiten Sie den obigen Befehl in

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

Ausgänge:

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

Wenn Sie diesen Befehl häufig ausführen möchten, können Sie einen Bash-Alias ​​für den gesamten Befehl erstellen. Beispiel:

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

Fügen Sie dies am Ende Ihrer .bashrc-Datei hinzu, und Sie können jederzeit im Terminal 'bat' eingeben.

Es gibt auch einen upower -d ( --dump ) -Befehl, der Informationen zu allen verfügbaren Stromquellen wie Laptop-Batterien, externen Mäusen usw. anzeigt.


338


2012-02-09

Eine freundliche Erinnerung : Da Linux - Kernel 2.6.24 mit /proc ACPI Informationen zu speichern , wurde entmutigt und veraltet .

Jetzt sind wir aufgefordert, -> zu verwenden /sys/class/power_supply/BAT0 .

UPDATE: Ab Linux 3.19 sollten wir uns das folgende Verzeichnis ansehen -> /sys/class/power_supply/BAT1/

Zum Beispiel Überprüfen von Kapazität und Status auf Arch Linux unter Linux 4.20 ->

 # uname -a
Linux 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/capacity
99
# cat /sys/class/power_supply/BAT1/status
Charging
 

130


2013-06-17

Installieren Sie zuerst, acpi indem Sie diesen Befehl ausführen.

 sudo apt-get install acpi
 

Dann renne:

 acpi
 

Beispielausgabe:

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

Oder für eine ausführlichere Ausgabe, die ständig aktualisiert wird:

 watch --interval=5 acpi -V
 

Ausgabe:

Alle 5.0s: acpi -V Mi Jan 8 15:45:35 2014

Batterie 0: voll, 100%
Adapter 0: online
Thermal 0: ok, 44,0 ° C
Thermal 0: Auslösepunkt 0 wechselt bei 127,0 ° C in den kritischen Modus
Thermisch 0: Auslösepunkt 1 wechselt in den Modus Heiß bei einer Temperatur von 127,0 ° C
Kühlung 0: intel_powerclamp Keine Statusinformationen verfügbar
Kühlung 1: pkg-temp-0 Keine Statusinformationen verfügbar
Kühlung 2: LCD 100 von 100
Kühlung 3: LCD 100 von 100
Kühlung 4: Prozessor 0 von 10
Kühlung 5: Prozessor 0 von 10
Kühlung 6: Prozessor 0 von 10
Kühlung 7: Prozessor 0 von 10
Kühlung 8: Prozessor 0 von 10
Kühlung 9: Prozessor 0 von 10
Kühlung 10: Prozessor 0 von 10
Kühlung 11: Prozessor 0 von 10

69


2012-11-24

Dank @Wilf funktioniert dies auf meinem Ubuntu 17.10 unter Lenovo Yoga 720:

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

Ausgabe:

 state:               fully-charged
percentage:          100%
 

Oder nur der numerische Wert mit diesem einen Liner

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

29


2014-07-02

Es reicht aus, den Befehl einzugeben

acpi

Für detaillierte Informationen können Sie eingeben

acpi -V

Ich musste vorher keine Pakete installieren.

System: Debian 7.2 64bit


28


2014-07-26

Hier ist ein Artikel über ein Paket, mit dem Sie die Akkulaufzeit in der Befehlszeile überprüfen können.

Grundsätzlich müssen Sie nur Folgendes tun:

 sudo apt-get install acpi
acpi -V
 

19


2011-06-10

Vielleicht können Sie versuchen:

cat /proc/acpi/battery/BAT0/state

cat /proc/acpi/battery/BAT0/info


18


2011-10-20

Ich bin ein bisschen zu spät zur Party, aber hier ist mein kleiner Beitrag. Basierend auf den vorherigen Antworten habe ich ein einfaches Skript Batpower gemacht:

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

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

Die Ausgabe für die Ausführung dieses Befehls (./batpower) wird ungefähr so ​​aussehen:

 POWER_SUPPLY_CAPACITY=23
 

NB: Die Baterie-Nummer kann für Sie unterschiedlich sein, in meinem Fall ist es BAT1, aber Sie können es immer herausfinden, indem Sie an / sys / class / power_supply oder wie von Lekensteyn durch upower -e erwähnt schreiben

Mein Rechner: Ubuntu 13.10, 3.11.0

Ersetzen Sie BAT1 im obigen Bash-Code durch BAT0, wenn Sie eine ältere Ubuntu-Version haben, z. B. 13.04 oder höher.

VERBESSERTES SCRIPT: Seit meinem ursprünglichen Post habe ich eine kleine Verbesserung am Script vorgenommen:

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

Achten Sie wie immer auf Leerzeichen mit Bash. Das ist alles selbsterklärend. Wenn die Batterie vorhanden ist, wird sie angezeigt, wenn nicht - das Skript sagt es Ihnen. Gehen Sie jetzt zu Ihrer .bashrc-Datei und fügen Sie $ (batpower) zu Ihrer Eingabeaufforderung hinzu. Hier ist mein Promt:

 PS1='[$(batpower)]\n${debian_chroot:+($debian_chroot)}[*\[email protected]*]:\w\$ ' 
 

Aktualisieren Sie Ihr Terminal oder öffnen Sie eine neue Registerkarte oder ein neues Fenster. Jetzt können Sie die Akkuladung im Terminal ständig überwachen! einschließlich tty! Möge das Drehbuch gelobt werden!
Bildbeschreibung hier eingeben


14


2014-07-23

Sie können dies tun, ohne zusätzliche Pakete zu installieren:

 $ echo $((100*$(sed -n "s/remaining capacity: *\(.*\) m[AW]h/\1/p" /proc/acpi/battery/BAT0/state)/$(sed -n "s/last full capacity: *\(.*\) m[AW]h/\1/p" /proc/acpi/battery/BAT0/info)))%
94%
 

Dieser Befehl wird von byobus Quelle aufgehoben . Es könnte ein guter Kandidat für einen Bash-Alias ​​sein .


10


2011-06-10

Führen Sie den folgenden Befehl in einem Terminal aus, um detaillierte Informationen abzurufen:

 cat /proc/acpi/battery/BAT0/info
 

Wenn Sie nur wollen, dass der Staat es tut:

 cat /proc/acpi/battery/BAT0/state
 

9


2011-04-19

Installieren Sie acpi und verwenden Sie dann watch , um die Befehlszeile kontinuierlich zu überwachen.

Z.B

watch --interval=5 acpi -V

zeigt die folgenden Informationen an und wird alle 5 Sekunden aktualisiert.

Akku 0: voll, 100%, Tarifinformation nicht verfügbar
Akku 0: Auslegungskapazität 6000 mAh, letzte volle Kapazität 3424 mAh = 57%

Die Frage ist, warum jemand dies tun würde? Nun, ich habe einen Laptop mit kaputtem LCD-Bildschirm, den ich jetzt als Bittorrent-Box verwende.


6


2011-08-30

Dies hat den Job für mich in Ubuntu 14.04 gemacht:

 cat /sys/class/power_supply/BAT0/capacity
 

5


2014-11-23

Ich wollte vorschlagen, acpi aber nachdem ich gelesen hatte, dass es in 11.10 nicht funktioniert, hatte ich eine Idee.

Bitte geben Sie dies in Ihr Terminal ein: ls /proc/acpi/battery/BAT0 oder BAT1

Wenn Sie eine "Datei oder ein Verzeichnis nicht gefunden" bekommen, funktioniert dies nicht.

Aber wenn es Dateien auflistet, dann ist hier ein Skript [fügen Sie es in / usr / games / oder ein anderes Verzeichnis in $ PATH ein, und führen sudo chmod +x /usr/games/batterypercent Sie es aus, oder wie auch immer Sie es nennen] , das ich gerade für Sie geschrieben habe und das Ihnen einen geschätzten Prozentsatz der Batterie gibt [Siehe unten]:

(Beachten Sie , wenn nicht bereits installiert ist , installieren Sie das Programm calc aus dem Repo: sudo apt-get install apcalc )

 #!/bin/bash
math() { calc -d "[email protected]"|tr -d ~; }
cd /proc/acpi/battery/BAT0;
max=$(grep 'design capacity:' info|awk '{print $3}')
current=$(grep 'remaining capacity:' state|awk '{print $3}')
percent=$(math "($current / $max) * 100");
echo $(echo $percent|cut -d. -f1)%
 

Ich habe dieses Skript auf meinem Laptop getestet. Ich sage Schätzung oben, weil acpi 93% der Batterie angezeigt werden und mein Skript 90% der Batterie anzeigt. Versuchen Sie also, dieses Skript anhand Ihres GUI-Batterieprozentsatzes zu testen und festzustellen, wie schwach die Batterie ist. In meinem Fall scheint es durchweg 3% niedriger zu sein als der Prozentsatz von acpi. In diesem Fall können Sie diese Zeile direkt vor der letzten Zeile einfügen: percent=$((percent + 3)) wobei "3" der Prozentsatz ist, um den sie niedrig ist.

** In meinem Lenovo ist der Akku als BAT1 aufgeführt, versuchen Sie das auch. (12.04 LTS)


4


2011-10-20

Ähnliches Skript ohne calc oder apcalc:

 #! /bin/bash
cd /proc/acpi/battery/BAT0;
max=$(grep 'design capacity:' info|awk '{print $3}')
current=$(grep 'remaining capacity:' state|awk '{print $3}')
percent=$(expr $current"00" / $max )
echo -e "Current capacity: \t$current"
echo -e "Max capacity:  \t$max"
echo -e "Percent: \t\t$percent"
 

1


2014-11-15

Hier ist was ich benutze. Es wird lediglich der Unterschied zwischen voller Ladung und aktueller Ladung untersucht und es wird geprüft, ob die Ladung sinkt. In diesem Fall wird eine Benachrichtigung verwendet, um den Benutzer zu benachrichtigen.

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

1


2016-02-28

Mit diesem Befehl können wir nur den Prozentsatz wiedergeben

 upower -i $(upower -e | grep 'BAT') | grep -E "state|to\ full|percentage" | awk '/perc/{print $2}'
 

65%

falls Sie diesen Wert extrahieren müssen


1


2018-03-25

Das hilft nicht allen, aber mir hat es geholfen - ich benutze byobu immer, wenn ich ein Terminal benutze, und der Akku ist eine der Optionen für die Statusbenachrichtigungsleiste.


0


2016-01-07

Sie können entweder Folgendes eingeben:

 $ acpi -i
Battery 0: Discharging, 98%, 02:51:14 remaining
Battery 0: design capacity 4400 mAh, last full capacity 3733 mAh = 84%
 

oder

 $ upower -i $(upower -e | grep BAT)
  native-path:          BAT0
  model:                PA5109U-1BRS
  serial:               FA80
  power supply:         yes
  updated:              lun. 07 janv. 2019 03:54:18 CET (24 seconds ago)
  has history:          yes
  has statistics:       yes
  battery
    present:             yes
    rechargeable:        yes
    state:               discharging
    energy:              39,521 Wh
    energy-empty:        0 Wh
    energy-full:         40,328 Wh
    energy-full-design:  47,52 Wh
    energy-rate:         13,856 W
    voltage:             10,8 V
    time to empty:       2,9 hours
    percentage:          98%
    capacity:            84,8632%
    technology:          lithium-ion
  History (charge):
    1546829628  98,000  discharging
    1546829593  99,000  discharging
  History (rate):
    1546829658  13,856  discharging
    1546829628  14,752  discharging
    1546829597  4,806   discharging
    1546829594  2,678   discharging
 

0


2019-01-07

 cat /proc/acpi/ac_adapter/AC/state
 

-4


2011-04-19