Pular para o conteúdo

Download com barra de progresso

Script que eu estava tentando fazer funcionar à tempos, a funcao dele é fazer um download de um arquivo e mostrar em uma barra de progresso quando jah pegou!
Espero que seja util!
In God We Trust in54no
Hits: 14.187 Categoria: Shell Script Subcategoria: Expressões Regulares
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Script que eu estava tentando fazer funcionar à tempos, a funcao dele é fazer um download de um arquivo e mostrar em uma barra de progresso quando jah pegou!
Espero que seja util!
Download dialog_download Enviar nova versão

Esconder código-fonte

#!/bin/bash
################################################################
# Script Criado por: Thiago Sanches - 11/20/05                 #
# Email: in54no.xjapan@gmail.com                               #
# Definicao: Mostra porcentagem baixada de um arquivo com dialog       #
# Licenca: GPL                                                 #
################################################################
LOG=wget.log
LINK=http://www.unimep.br/~tsmoraes/game_correto.tar.bz2

#rotina pra tratar um erro
erro()
{
   echo "Erro fazendo download do link: $LINK"
   exit 1
}

#ler sempre o arquivo de log gerado pelo wget, procurando pelo caracter %
#depois remove os caracteres desnecessarios com cut, ficando só os numeros.
pega_porcentagem()
{
   
   while true
   do
      PORCENTAGEM=`cat $LOG | grep % | cut -c62-64 | tail -n 1`
      echo $PORCENTAGEM
      #se o porcentagem igual a 100 para de fazer o loop infinito, pois arquivo jah 
      #foi baixado completamente
      if [ $PORCENTAGEM = 100 ]
      then
         break;
      fi
      
   done
   
}

wget -o $LOG $LINK &
 #saida de pega_porcentagem é entrada para Xdialog
 ( pega_porcentagem ) | Xdialog --gauge "Aguarde, fazendo download do arquivo..." 0 0

Script de compilação do kernel

Converter arquivo bibtex para texto formatado e vice-versa

Verifica os maiores arquivos no diretório informado

brasil telecom servidor de adsl autenticaçao

Script para trocar textos em arquivos

#1 Comentário enviado por Rodrigo... em 06/03/2006 - 15:35h
gostei do script, mto bom, como ficaria se eu colocasse um botão pra cancelar ?
#2 Comentário enviado por in54no em 06/03/2006 - 15:49h
Rodrigo,
Pelo que eu saiba a opçao que estou usando (gauge) ela só mostra uma barra de progresso mesmo, pelo menos eu nao sei como adicionar um botao cancelar, mas se souber de alguma coisa me avise blz? obrigado pelo seu comentario fique com Deus
#3 Comentário enviado por Rodrigo... em 07/03/2006 - 11:15h
a partir do seu script eu fiz isso aqui

------------------------------------------------------------------------------------------

#!/bin/bash
#Script para baixar sistemas Linux
#Versão 0.9 beta
#By Ø Rodrigo Ø

#Constante...
LOG=wget.log

#Programa...
echo "Qual sistema você deseja baixar ?"
echo
echo "[1] Kurumin 5.1 (estável)"
echo "[2] Kurumin 6.0 alpha1 (beta)"
#echo "[3] Nome do sistema"
echo "[9] Ir ao forum do autor"
echo "[0] Sair (fechar)"
echo
read sistema
if [ "$sistema" = "1" ];
then
clear
echo "Preparando download do kurumin 5.1"
CORRETO="3e037ab97815b304537cfc69110825b4 kurumin-5.1.iso"
MD5SUM=`kurumin-5.1.md5sum.txt`
IMAGEM=`kurumin-5.1.iso`
LINK=http://fisica.ufpr.br/kurumin/kurumin-5.1.iso

elif [ "$sistema" = "2" ]; then
clear
echo "Preparando download do kurumin 6.0 alpha1"
CORRETO="313ab1a62ac99cba09ab7bcfc801666b kurumin-6.0-beta1a.iso"
MD5SUM=`kurumin-6.0-beta1a.md5sum.txt`
IMAGEM=`kurumin-6.0-beta1a.iso`
LINK=http://fisica.ufpr.br/kurumin/kurumin-6.0-beta1a.iso

#elif [ "$sistema" = "3" ]; then
#clear
#echo "Preparando download do #######"
#CORRETO=`conteúdo do md5sum`
#MD5SUM=`nome do md5sum`
#IMAGEM=`nome da imagem .iso`
#LINK=Link para a imagem .iso

elif [ "$sistema" = "9" ]; then
clear
firefox www.webhackers.rg3.net
exit

elif [ "$sistema" = "0" ]; then
clear
exit
else
clear
echo "Opção inexistente !"
exit
fi

pega_porcentagem()
{

while true
do
PORCENTAGEM=`cat $LOG | grep % | cut -c62-64 | tail -n 1`
echo $PORCENTAGEM
#se o porcentagem igual a 100 para de fazer o loop infinito, pois arquivo jah
#foi baixado completamente
if [ $PORCENTAGEM = 100 ]
then
break;
fi

done

}

wget -o $LOG $LINK &
#saida de pega_porcentagem é entrada para Xdialog
( pega_porcentagem ) | Xdialog --gauge "Aguarde, fazendo download do arquivo..." 0 0

if [ "$MD5SUM" != "$CORRETO" ];
then
kdialog --error "O arquivo está corrompido"
echo
echo "Deseja baixar novamente ?"
echo "[S]Sim - [N]Não"
echo
read baixar
case $baixar in
S) sim;;
N) nao;;
esac

sim ()
{
clear
rm -f $IMAGEM
./$0
}

nao ()
{
clear
exit
}

else
echo "O arquivo foi baixado corretamente"
fi

-------------------------------------------------------------------------------

só não testei por completo ainda...
#4 Comentário enviado por in54no em 07/03/2006 - 14:44h
opa kra, que dahora, valew ae :D:D gostei :D
#6 Comentário enviado por in54no em 07/03/2006 - 14:57h
blz :D:D
c tem jabber?? c tiver add eu: stryper@jabber.org
#7 Comentário enviado por Rodrigo... em 07/03/2006 - 15:09h
tenho não, só msn e google talk..
#8 Comentário enviado por Rodrigo... em 07/03/2006 - 15:20h
alias...como faço pra usar o jabber ?
#9 Comentário enviado por in54no em 07/03/2006 - 15:24h
adiciona eu no JABBER:
stryper@jabber.org
#10 Comentário enviado por ana maria em 09/09/2006 - 17:26h
como que eu fasso para poder instalar o msn ? por favor me responda...
#11 Comentário enviado por ana maria em 09/09/2006 - 17:29h
oie.... tem alguém ai para poder me responder??????????????????
#12 Comentário enviado por in54no em 09/09/2006 - 19:24h
Ola, ana maria...
Que distribuiçao linux voce usa?
O projeto de msn para linux é neste site: http://amsn.sourceforge.net/
Qualquer coisa mande email para mim: in54no.xjapan@gmail.com

Aqui no site, tem um lugar certinho para postar perguntas que todos irao ver, quando voce logar no site, na parte de baixo do site tem uma barra, clique onde esta escrito "Pergunta" para postar sua duvida! ok?

Neste link: http://amsn.sourceforge.net/linux-downloads.php
tem os pacotes corretos para determinada distribuicao linux, assim basta fazer o download e instalar.

Espero que ajude, té mais, fique com Deus

Contribuir com comentário

Entre na sua conta para comentar.