wget tem um sinalizador embutido para isso: wget -i your_list
Você pode encontrar esse tipo de coisa lendo man wget
Como posso baixar arquivos (listados em um arquivo de texto) usando wget
ou alguma outra forma automática?
Lista de arquivos de amostra:
www.example.com/1.pdf
www.example.com/2.pdf
www.example.com/3.pdf
wget tem um sinalizador embutido para isso: wget -i your_list
Você pode encontrar esse tipo de coisa lendo man wget
Coloque-os em paralelo com
cat urlfile | parallel --gnu "wget {}"
Por padrão, ele executará tantos processos quantos os núcleos, e você provavelmente aumentará outros 10x se realmente quiser desativá-los rapidamente adicionando "-j 20" após o paralelo.
xargs -i wget 'http://{}' < your_list
parallel
tem um sinalizador --arg-file
( -a
) integrado que usará um arquivo de entrada como a origem, para que você possa evitar cat |
. Você pode usar
parallel --gnu -a urlfile wget
Ou simplesmente parallel --gnu wget < urlfile
awk '{print "http://" $0;}' list.txt | xargs -l1 wget
em que list.txt é o seu arquivo de lista
Eu vi a resposta de Florian Diesch.
Eu consegui que funcionasse incluindo o parâmetro bqc
no comando.
xargs -i wget -bqc 'http://{}' < download.txt
Todos os downloads começaram em paralelo no plano de fundo.
-b
: fundo. Ir para o fundo imediatamente após o início -q
: silencioso. Desativar a saída do wget -c
: continuar. Continue recebendo um arquivo parcialmente baixado Link do arquivo links.txt
Comando para baixar o arquivo de todos os links
cat links.txt | wget -i
Tags wget