Medidor de bateria de laptop modo texto

Publicado por Rafael Iguatemy 28/07/2009

[ Hits: 12.010 ]

Homepage: http://rafaeliguatemy.com.br

Download energia.sh




Salve amigos!

Desenvolvi um script que pode ser útil para aqueles que usam muito o modo texto e querem monitorar a energia de sua bateria.

Rafael Iguatemy
rafael.dsantos@bol.com.br

  



Esconder código-fonte

#!/bin/bash
#
#energia.sh - Retorna o status de energia e bateria.
#
#  Blog: rafaeliguatemy.blogspot.com
#  Autor: Rafael Iguatemy dos Santos <rafael.dsantos@bol.com.br>
#  Manutencao: Rafael Iguatemy dos Santos
#
#------------------------------------------------------------------------
#  Esse programa mostra o status de energia, mostrado no shell.
#
#  Exemplo:
#    $ ./energia.sh 
#    
#------------------------------------------------------------------------
#Versao 1.0 2009-07-22 Rafael Iguatemy
#      -Versao inicial
#Versao 1.1 2009-07-24 Rafael Iguatemy
#      -Colocacao da barra de progresso
# Licenca: GPL
#
#-------------------------------------------------------------------------

MSG_HLP="
Uso : $(basename "$0") [OPCOES]

Opcoes:
-    -h    --> Mostra a tela de ajuda 
-    -g    --> Mostra a interface do programa
-    -V    --> Mostra a versao do programa"


#Variavel da bateria
bateria="BAT1" 

#Valor atual em mAh da bateria
VALOR_REAL=$(egrep '^rem' /proc/acpi/battery/$bateria/state | cut -d : -f 2 | tr mAh ' ')  



#Valor Total da Bateria em (mAh)
VALOR_TOTAL=$(egrep '^las' /proc/acpi/battery/$bateria/info | cut -d : -f 2 | tr mAh ' ') 


#Calculo de Porcentagem de carga
PORCENTAGEM=$(((VALOR_REAL*100)/VALOR_TOTAL)) #Calculo da Porcentagem


#Variavel de teste de carga

CARREGA="$(egrep '^char' /proc/acpi/battery/$bateria/state | cut -d : -f 2)"
while getopts ":hVgm" opcao
   do
     case "$opcao" in
       g)   (printf "%0.0f" $PORCENTAGEM; sleep 1 ) | dialog --title 'Nivel de Energia' --gauge "\nEstado da bateria :$CARREGA \nNivel de energia : "  8 60 80 
       exit 0;;

       V) echo -n $(basename "$0")
          echo
     echo
          grep '^#Versao' "$0" | tail -1 | cut -d : -f 1 | tr -d \#
     echo
     exit 0 ;;

       h) echo "$MSG_HLP"
          exit 0 ;;

       \?) echo "Opcao invalida:" $OPTARG
         exit 1 ;;
       :) echo "Faltou argumento para : " $OPTARG
           echo 1
      ;;
    esac
    shift
   done 


Scripts recomendados

Postando no Twitter

Compartilhamento NAT

Localizador não interativo do Mozilla Thunderbird para Slackware

Criando redundância de links

Enviar mensagem para os terminais ltsp


  

Comentários
[1] Comentário enviado por uberalles em 28/07/2009 - 09:30h

Da hora. Vou testar no meu.

[2] Comentário enviado por marrolim em 29/07/2009 - 10:20h

Como sou munheca, gostaria de saber como faço para usar este script?

[3] Comentário enviado por rafael.dsantos em 29/07/2009 - 10:54h

$ sh energia -g

E aparecerá a barra de energia !!!!

Vlw !

[4] Comentário enviado por sandromt em 30/07/2009 - 10:13h

Muito bom esse script, fiz uma pequena alteracao nele, nao entendi o porque do "80" que fica no fim da linha abaixo, entao coloquei para pegar direto a porcentagem.

Como era:
g) (printf "%0.0f" $PORCENTAGEM; sleep 1 ) | dialog --title 'Nivel de Energia' --gauge "\nEstado da bateria :$CARREGA \nNivel de energia : " 8 50 80

Como deixei:
g) (printf "%0.0f" $PORCENTAGEM; sleep 1 ) | dialog --title 'Nivel de Energia' --gauge "\nEstado da bateria :$CARREGA \nNivel de energia : " 8 50 $PORCENTAGEM

Valeu !!!!

[5] Comentário enviado por projeto_cem em 16/12/2010 - 12:31h

Aqui está dando erro!!! xD

[6] Comentário enviado por projeto_cem em 16/12/2010 - 12:36h

Olá,

Eu estava olhando o Shipt e resolvi dar umas modificadas.

Agora está funcionado...

Eu coloquei um case para traduzir o texto
E coloquei as variáveis da porcentagem para mostrar o valor certo.

É só isso mesmo
Muito obrigado pela atenção.

#!/bin/bash
#
#energia.sh - Retorna o status de energia e bateria.
#
# Blog: rafaeliguatemy.blogspot.com
# Autor: Rafael Iguatemy dos Santos <rafael.dsantos@bol.com.br>
# Manutencao: Rafael Iguatemy dos Santos
#
#------------------------------------------------------------------------
# Esse programa mostra o status de energia, mostrado no shell.
#
# Exemplo:
# $ ./energia.sh
#
#------------------------------------------------------------------------
#Versao 1.0 2009-07-22 Rafael Iguatemy
# -Versao inicial
#Versao 1.1 2009-07-24 Rafael Iguatemy
# -Colocacao da barra de progresso
# Licenca: GPL
#
#-------------------------------------------------------------------------

MSG_HLP="
Uso : $(basename "$0") [OPCOES]

Opcoes:
- -h --> Mostra a tela de ajuda
- -g --> Mostra a interface do programa
- -V --> Mostra a versao do programa"


#Variavel da bateria
bateria="BAT0"

#Valor atual em mAh da bateria
VALOR_REAL=$(egrep '^rem' /proc/acpi/battery/$bateria/state | cut -d : -f 2 | tr mAh ' ')



#Valor Total da Bateria em (mAh)
VALOR_TOTAL=$(egrep '^las' /proc/acpi/battery/$bateria/info | cut -d : -f 2 | tr mAh ' ')


VALOR_REAL1=${VALOR_REAL//W/ }
VALOR_TOTAL1=${VALOR_TOTAL//W/ }

#Calculo de Porcentagem de carga
PORCENTAGEM=$((VALOR_REAL1*100/VALOR_TOTAL1)) #Calculo da Porcentagem


#Calculo de Porcentagem de carga
#PORCENTAGEM=$(((VALOR_REAL*100)/VALOR_TOTAL)) #Calculo da Porcentagem


#Variavel de teste de carga

CARREGA="$(egrep '^char' /proc/acpi/battery/$bateria/state | cut -d : -f 2)"

case $CARREGA in
" discharging")
CARREGA="Descarregando"
;;
" charged")
CARREGA="Carregado"
;;
*)
CARREGA="Desconhecido"
esac


#while getopts ":hVgm*" opcao
# do

case "$opcao" in
g)
(printf "%0.0f" $PORCENTAGEM; sleep 1 ) | dialog --title 'Nivel de Energia' --gauge "\nEstado da bateria : $CARREGA \n\nNivel de energia " 0 0
;;
V) echo -n $(basename "$0")
echo
echo
grep '^#Versao' "$0" | tail -1 | cut -d : -f 1 | tr -d \#
echo
exit 0
;;
h) echo "$MSG_HLP"
exit 0
;;
\?) echo "Opcao invalida:" $OPTARG
exit 1
;;
:) echo "Faltou argumento para : " $OPTARG
echo 1
;;
*)
(printf "%0.0f" $PORCENTAGEM; sleep 1 ) | dialog --title 'Nivel de Energia' --gauge "\nEstado da bateria : $CARREGA \n\nNivel de energia " 0 0
esac
shift
#done


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts