#!/usr/bin/perl use warnings; use strict; use diagnostics; my $status; open (BATT, "/proc/acpi/battery/BAT0/state") || die("Can't Open: $!"); while () { if ($_ =~ /(charging state:)(\s+)(\w+)/ ) { $status = $3; } if ($_ =~ /(:)(\s+)(\d*)(\s+)(mAh)/ ) { print "\n"; my $perc = $3/2791; printf "The battery is %s", $status; print "\n"; printf "Battery percentage is: %.0f", $perc*100; print "\n-----------------------------\n\n"; } else { print "Incorrect Format"; } } close BATT;