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 --enumeratekann nützlich sein, wenn Sie sich nicht sicher sind, wie Sie es verwenden sollen upower.
Landroni
5
@landroni Und die Kurzwahloption ist upower -e, dass der Befehl die verfügbaren Pfade für auflistet upower -i .... Wenn Sie faul sind und nur eine Liste aller Geräte möchten, verwenden Sie upower -d( upower --dump).
Lekensteyn
1
Tatsächlich. Ich denke, dies wäre eine nützliche Ergänzung zur eigentlichen Antwort, da ich upowermich sofort verlaufen habe , als ich zum ersten Mal versuchte, sie zu verwenden .
Landroni
1
@landroni Guter Punkt, ich habe die Antwort aktualisiert. Fühlen Sie sich frei, es zu bearbeiten, wenn Sie weitere Ergänzungen haben.
Insbesondere /sys/class/power_supply/BAT0/capacityscheint der aktuelle Ladungsprozentsatz anzuzeigen.
Thomasa88
Veraltet ... funktioniert es noch?
neverMind9
3
+1, dies sollte die akzeptierte Antwort sein, da keine zusätzliche Software erforderlich ist, die möglicherweise nicht installiert ist und zur Beantwortung dieser Frage nicht benötigt wird. @ neverMind9: Ich weiß nicht, was du meinst, /procist veraltet, aber es /sysfunktioniert perfekt für mich, auch in Kernel 4.20.
Comfreak
1
@comfreak Funktioniert auch für mich.
NeverMind9
1
Dies sollte nicht nur die Antwort des Akzeptors sein, sondern das Abrufen der Daten kann auch mithilfe einer beliebigen Programmiersprache erfolgen, die eine readFunktion wie in PHP aufweist $capacity = trim(file_get_contents("/sys/class/power_supply/BAT0/capacity"));, die es supereinfach macht und nicht von externen Abhängigkeiten abhängig ist.
Amin NAIRI
67
Installieren Sie zuerst, acpiindem 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
Thermal 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
Das /procSpeichern von ACPI-Informationen wird seit 2.6.24 nicht mehr empfohlen. Jetzt ist es in /sys/class/power_supply/BAT0.
Terry Wang
14
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. Wechseln Sie nun zu Ihrer .bashrc-Datei und fügen Sie Ihrer Eingabeaufforderung $ (batpower) hinzu. Hier ist mein Promt:
Aktualisieren Sie Ihr Terminal oder öffnen Sie einen neuen Tab oder ein neues Fenster. Jetzt können Sie die Akkuladung im Terminal ständig überwachen! einschließlich tty! Möge das Drehbuch gelobt werden!
Sie müssen überprüfen /sys/class/power_supply/BAT0und /sys/class/power_supply/BAT1... Es kann entweder sein. Und Sie sollten diesen Pfad verwenden ( /sys/class/power_supply/BAT#).
dylnmc
In meinem Ubuntu 12.04-Netbook (nach dem Wechsel zu BAT0) erhalte ich anscheinend keine POWER_SUPPLY_CAPACITY-Zeile. Es sieht so aus, als könnte ich es aus den Werten POWER_SUPPLY_CHARGE_FULL und POWER_SUPPLY_CHARGE_NOW berechnen.
Mwfearnley
Upvoted, aber Batman (Battery Manager) klingt unbewusst besser als Batpower :) Im Ernst, es ist interessant, dass Sie 2014 in AskUbuntu geschrieben haben und wie anders Sie heute sind.
WinEunuuchs2Unix
@ WinEunuuuchs2Unix Ja, ich habe mich etwas verändert, seit ich angefangen habe, ein paar neue Tricks gelernt. batman hätte einen schönen ring, aber es ist wahrscheinlich urheberrechtlich geschützt;)
Sergiy Kolodyazhnyy
10
Sie können dies tun, ohne zusätzliche Pakete zu installieren:
Ich wollte vorschlagen, acpiaber 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 oderBAT1
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/batterypercentSie 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 calcaus dem Repo: sudo apt-get install apcalc)
Ich habe dieses Skript auf meinem Laptop getestet. Ich sage Schätzung oben, weil acpi93% 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 als der Prozentsatz von acpi zu sein. 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)
Matt, versuchte Ihren Vorschlag, bekam eine "Keine Datei oder Verzeichnis"
Joe
Okay, ich bin mir fast sicher, dass dies der Grund dafür ist, dassacpi es nicht funktioniert, da 11.10 vermutlich auch nicht die ACPI-Funktionen Ihres Laptops unterstützt [Akku usw.]. Ich glaube, ich habe so etwas in der Vergangenheit beim Upgrade erlebt. Ich bin aber immer noch am 11.04. Entschuldigung, dass dies nicht funktioniert hat :(
Matt
Also, nur neugierig, können Sie die Ausgabe von einfügen ls /proc/acpi/? Vielen Dank
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
Das hilft nicht allen, aber mir hat es geholfen - ich benutze byobu immer, wenn ich ein Terminal benutze, und Batterie ist eine der Optionen für die Statusbenachrichtigungsleiste.
$ upower -i $(upower -e | grep 'BAT') | grep -E "state|to\ full|percentage"
Antworten:
Der folgende Befehl gibt einen Chargenstatus und statistische Informationen über die Batterie aus. Den
/org/...
Pfad finden Sie mit dem Befehlupower -e
(--enumerate
).Beispielausgabe:
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
Ausgänge:
Wenn Sie diesen Befehl häufig ausführen möchten, können Sie einen Bash-Alias für den gesamten Befehl erstellen. Beispiel:
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.quelle
upower --enumerate
kann nützlich sein, wenn Sie sich nicht sicher sind, wie Sie es verwenden sollenupower
.upower -e
, dass der Befehl die verfügbaren Pfade für auflistetupower -i ...
. Wenn Sie faul sind und nur eine Liste aller Geräte möchten, verwenden Sieupower -d
(upower --dump
).upower
mich sofort verlaufen habe , als ich zum ersten Mal versuchte, sie zu verwenden .upower -i $(upower -e | grep BAT) | grep --color=never -E "state|to\ full|to\ empty|percentage"
Eine freundliche Erinnerung : Da Linux - Kernel 2.6.24 mit
/proc
ACPI Informationen zu speichern , wurde entmutigt und veraltet .Jetzt werden wir ermutigt, -> 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 ->
quelle
/sys/class/power_supply/BAT0/capacity
scheint der aktuelle Ladungsprozentsatz anzuzeigen./proc
ist veraltet, aber es/sys
funktioniert perfekt für mich, auch in Kernel 4.20.read
Funktion wie in PHP aufweist$capacity = trim(file_get_contents("/sys/class/power_supply/BAT0/capacity"));
, die es supereinfach macht und nicht von externen Abhängigkeiten abhängig ist.Installieren Sie zuerst,
acpi
indem Sie diesen Befehl ausführen.Dann renne:
Beispielausgabe:
Oder für eine ausführlichere Ausgabe, die ständig aktualisiert wird:
Ausgabe:
quelle
Dank @Wilf funktioniert dies auf meinem Ubuntu 17.10 unter Lenovo Yoga 720:
Ausgabe:
Oder nur der numerische Wert mit diesem einen Liner
quelle
battery
anstattBAT
es zum Laufen zu bringen. Ich fand das mitupower --enumerate
.battery
Arbeiten in Ubuntu auch, so habe ich es vonBAT
Es reicht aus, den Befehl einzugeben
Für detaillierte Informationen können Sie eingeben
Ich musste vorher keine Pakete installieren.
System: Debian 7.2 64bit
quelle
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:
quelle
Vielleicht können Sie versuchen:
cat /proc/acpi/battery/BAT0/state
cat /proc/acpi/battery/BAT0/info
quelle
/proc
Speichern von ACPI-Informationen wird seit 2.6.24 nicht mehr empfohlen. Jetzt ist es in/sys/class/power_supply/BAT0
.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:
Die Ausgabe für die Ausführung dieses Befehls (./batpower) wird ungefähr so aussehen:
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:
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. Wechseln Sie nun zu Ihrer .bashrc-Datei und fügen Sie Ihrer Eingabeaufforderung $ (batpower) hinzu. Hier ist mein Promt:
Aktualisieren Sie Ihr Terminal oder öffnen Sie einen neuen Tab oder ein neues Fenster. Jetzt können Sie die Akkuladung im Terminal ständig überwachen! einschließlich tty! Möge das Drehbuch gelobt werden!
quelle
/sys/class/power_supply/BAT0
und/sys/class/power_supply/BAT1
... Es kann entweder sein. Und Sie sollten diesen Pfad verwenden (/sys/class/power_supply/BAT#
).Sie können dies tun, ohne zusätzliche Pakete zu installieren:
Dieser Befehl wird von byobus Quelle aufgehoben . Es könnte ein guter Kandidat für einen Bash-Alias sein .
quelle
/sys/class/power_supply/BAT0/
Führen Sie den folgenden Befehl in einem Terminal aus, um detaillierte Informationen abzurufen:
Wenn Sie nur wollen, dass der Staat es tut:
quelle
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.
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.
quelle
Dies hat den Job für mich in Ubuntu 14.04 gemacht:
quelle
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
oderBAT1
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
)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 als der Prozentsatz von acpi zu sein. 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)
quelle
acpi
es nicht funktioniert, da 11.10 vermutlich auch nicht die ACPI-Funktionen Ihres Laptops unterstützt [Akku usw.]. Ich glaube, ich habe so etwas in der Vergangenheit beim Upgrade erlebt. Ich bin aber immer noch am 11.04. Entschuldigung, dass dies nicht funktioniert hat :(ls /proc/acpi/
? Vielen DankÄhnliches Skript ohne calc oder apcalc:
quelle
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.
quelle
Mit diesem Befehl können wir nur den Prozentsatz wiedergeben
65%
falls Sie diesen Wert extrahieren müssen
quelle
Das hilft nicht allen, aber mir hat es geholfen - ich benutze byobu immer, wenn ich ein Terminal benutze, und Batterie ist eine der Optionen für die Statusbenachrichtigungsleiste.
quelle
Sie können entweder Folgendes eingeben:
oder
quelle
quelle
cat: /proc/acpi/ac_adapter/AC0/state: No such file or directory