[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] script de download
From: |
Tiago Barcellos Peczenyj |
Subject: |
Re: [shell-script] script de download |
Date: |
Sun, 23 Oct 2005 13:33:25 -0200 |
Aos entusiastas,
Dei uma cara final ao script, deixei um case proposital para adicionar
novas funcionalidades.
Será interessante alterar o script para usarmos uma lista de URLs para
downloads, de um arquivo texto por exemplo ou pegar mirrors de sites,
etc. Melhor ainda, fazer todas as interfaces por dialog. ;-)
Entretanto eu não consegui pegar o PID do wget pelo $!, não sei por
que. Mas quando executamos o wget -b ele informa qual o PID do
processo em background. Adicionando ao genial --pid do tail (vivendo e
aprendendo... valeu Mr Bits!) o script chega em 100% e termina.
#!/bin/bash
SCRIPT=$(basename $0)
USAGE="usage $SCRIPT -u URL"
error(){ echo -e "$1" ; exit 1 ; }
[ "$1" ] || error "$USAGE"
while [ "$1" ]
do case "$1" in
-u) shift; TARGET="$1" ; shift ;;
*) usage ;;
esac
done
[ "$TARGET" ] || error "Error! URL missing!\n$USAGE"
LOG="wget-log"
FILE=$(basename "$TARGET")
URL=$(dirname "$TARGET")
TITLE="Conectando a $URL"
MSG="Realizando Download de $FILE"
rm -f $LOG
PID="$( wget -o $LOG -b $TARGET | awk '/pid/{print $5}' | tr '.' '
')"
trap "kill $PID" 2 15
perc() { echo "$1" | grep '%' | cut -f 2 -d K | cut -d % -f 1 | sed
's/[^0-9]//g' ; }
do_gauge() { tail -f $LOG --pid=$PID | while read L ; do perc "$L" ; done ; }
( do_gauge ) | dialog --title "$TITLE" --gauge "$MSG" 8 40 0
Em 23/10/05, MrBiTs<address@hidden> escreveu:
> /*
> pow mano parabes mesmo muito obrigado resolveu, so deu um erro, pois o
> arquivo wget-log precisa de permissao para ser lido, porem depois de
> adcionada a permissao o arquivo funciona que é uma coisa linda.
> */
>
> Estranho, já que ele vai ser criado com as permissões do usuário que
> rodou o wget e vai ser lido pelo tail rodado pelo MESMO usuário (
> tipicamente o usuário que rodou o script ). Mas... fico feliz que tenha
> funcionado. Correções e improvements are welcome :)
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
>
>
>
>
> Yahoo! Grupos, um serviço oferecido por:
>
> ________________________________
> Links do Yahoo! Grupos
>
>
> Para visitar o site do seu grupo na web, acesse:
> http://br.groups.yahoo.com/group/shell-script/
>
> Para sair deste grupo, envie um e-mail para:
> address@hidden
>
> O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do
> Yahoo!.
- script de download, jackson braga, 2005/10/22
- Re: [shell-script] script de download, Tiago Barcellos Peczenyj, 2005/10/22
- Re: [shell-script] script de download, jackson braga, 2005/10/22
- Re: [shell-script] script de download, Tiago Barcellos Peczenyj, 2005/10/22
- Re: [shell-script] script de download, jackson braga, 2005/10/22
- Re: [shell-script] script de download, MrBiTs, 2005/10/23
- Re: [shell-script] script de download, jackson braga, 2005/10/23
- Re: [shell-script] script de download, MrBiTs, 2005/10/23
- Re: [shell-script] script de download, jackson braga, 2005/10/23
- Re: [shell-script] script de download, MrBiTs, 2005/10/23
- Re: [shell-script] script de download,
Tiago Barcellos Peczenyj <=
- Re: [shell-script] script de download, Fabricio Lopes de Souza, 2005/10/24
- Re: [shell-script] script de download, Fabricio Lopes de Souza, 2005/10/24