Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
executable file 49 lines (36 sloc) 1.12 KB
#!/usr/bin/env python3
# Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""
Show battery information.
$ python3 scripts/battery.py
charge: 74%
left: 2:11:31
status: discharging
plugged in: no
"""
from __future__ import print_function
import sys
import psutil
def secs2hours(secs):
mm, ss = divmod(secs, 60)
hh, mm = divmod(mm, 60)
return "%d:%02d:%02d" % (hh, mm, ss)
def main():
if not hasattr(psutil, "sensors_battery"):
return sys.exit("platform not supported")
batt = psutil.sensors_battery()
if batt is None:
return sys.exit("no battery is installed")
print("charge: %s%%" % round(batt.percent, 2))
if batt.power_plugged:
print("status: %s" % (
"charging" if batt.percent < 100 else "fully charged"))
print("plugged in: yes")
else:
print("left: %s" % secs2hours(batt.secsleft))
print("status: %s" % "discharging")
print("plugged in: no")
if __name__ == '__main__':
main()