Medidor de bateria de laptop modo texto

Publicado por Rafael Iguatemy 28/07/2009

[ Hits: 12.171 ]

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

Backup da base de dados PostgreSQL

Script em Dialog pesquisa nome do banco no mysql

Compartilhamento de internet

Script para enviar put para uma API usando curl e dados no formato json

Script de instalação para Firefox e Thunderbird


  

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