Pular para o conteúdo

script simples para download (wget) [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. script simples para download (wget) [RESOLVIDO]

Enviado em 15/02/2010 - 22:25h

Olá galera, preciso baixar algumas video-aulas e são muitas.

Por exemplo: http://www.site.com/pasta/arquivo01.avi

E vai até ao arquivo50.avi

Alguém poderia me dizer como eu faço para baixar do 01 ao 50 pelo wget?

Obrigado =)

-

Um PS: já tentei wget -r.. mas não tenho acesso às pastas.. apenas aos arquivos.

Vlw

-

Resolvi com perl

#!/usr/bin/perl -w
$x = 1;
while ($x < 50) {
system ("wget http://www.site.com/pasta/arquivo$x.avi");
$x++;
}

Vlw.

Responder tópico

3. Re: script simples para download (wget) [RESOLVIDO]

Enviado em 16/02/2010 - 12:21h

É, estranho..
Se for de 01 até 50 (01,02,03,04..10..50) o script dele não irá funcionar. Além de fazer
a contagem como 1,2,3.., a contagem só vai até 49.

Pela solução do douglasfim, o shell irá expandir o {..} como 1,2,3 e não como 01,02,03 (mesmo se
colocar o zero antes {01..50} --> Embora isso funcione no bash 4 =D )

Então para se ter a saída como 01,02,03.. uma maneira é usando o printf:

URL=`printf 'http://www.site.com/pasta/arquivo%02d.avi'; $i`
wget $URL

t+

4. Ou:

Enviado em 16/02/2010 - 23:03h

#!/bin/bash

function _acabou(){

echo 'Todos os dowloads foram concluidos';
# Claro que poderia(m) ser um outro(s) comando(s)

}

for i in {1..50}; do

if [ $i -lt 10 ]; then
x="0${i}";
else
x="$i";
fi

wget -c http://www.site.com/pasta/arquivo${x}.avi

done && _acabou;

exit

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder