I am using the command upower -i /org/freedesktop/UPower/devices/battery_BAT0 and acpi -V to check the battery current status. It shows it has history and statistics.

How can I check the history?

I knew there are some apps which can produce a nice graph of the battery history, but that is not what I am looking for. I would like to see the history in a text log. I want to examine the text log with some scripts and editor to determine when the battery status changed etc..

Thanks a lot.


If the question is not possible, how to monitor battery state change event? I need to record the battery information whenever the battery/ac state changes. So checking upower or acpi output at a interval time is not sufficient. Thanks.

1 Answer 1


I’m not sure whether past data is easily readable, but you can write the current status to a file like this:

upower -i `upower -e | grep 'BAT'` >> history.txt

If you were to put this into a cron job that ran at regular intervals, it may give you what you’re looking for.

  • Thanks for this reply. I knew I could do that. But sorry that it is not what I am looking for. Even for logging the current satus, I need to log all change status information. So setting an interval will not satisfy my requirement. I need to log whenever the battery change from discharing to charging, charging to discharging etc.. Basically, I need to monitor the battery status change event. Thanks.
    – sgon00
    Dec 6, 2020 at 15:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.