Bir listeden dosya indir

108

wget veya başka bir otomatik yol kullanarak dosyaları (bir metin dosyasında listelenir) nasıl indirebilirim?

Örnek dosya listesi:

www.example.com/1.pdf
www.example.com/2.pdf
www.example.com/3.pdf
    
sordu Sourav 12.02.2012 17:39

7 cevap

189

wget’in bunun için yerleşik bir bayrağı vardır: wget -i your_list Bu tür bir şeyi man wget

okuyarak bulabilirsiniz.     
verilen cevap aureianimus 12.02.2012 17:56
79

Onları paralel olarak alın

cat urlfile | parallel --gnu "wget {}"

Varsayılan olarak, çekirdekleriniz olduğu kadar çok sayıda işlem yürütür, paralel olarak sonra "-j 20" ekleyerek bunları gerçekten hızlı bir şekilde çekmek istediğinizde bunu muhtemelen 10x daha yükseltebilirsiniz.

    
verilen cevap meawoppl 17.10.2013 17:57
9
xargs -i wget 'http://{}'  < your_list
    
verilen cevap Florian Diesch 12.02.2012 17:53
7

parallel kaynağında giriş dosyası kullanacak yerleşik bir --arg-file ( -a ) bayrağı vardır, bu yüzden cat | 'yi engelleyebilirsiniz. Kullanabilirsiniz

parallel --gnu -a urlfile wget

Veya sadece parallel --gnu wget < urlfile

    
verilen cevap yxogenium 18.06.2016 14:01
5
awk '{print "http://" %pre%;}' list.txt | xargs -l1 wget

liste.txt liste dosyanızdır

    
verilen cevap flo 12.02.2012 17:51
4

Florian Diesch'in cevabını gördüm.

Komutta bqc parametresini ekleyerek çalışmaya başladım.

xargs -i wget -bqc 'http://{}' < download.txt

Tüm indirmeler arka planda paralel olarak başlatıldı.

  • -b : Arka Plan. Başladıktan hemen sonra arka plana git
  • -q : Sessiz. Wget’in çıkışını kapat
  • -c : Devam. Kısmen indirilen bir dosya almaya devam et
verilen cevap streetlife 04.05.2015 18:56
1

Bağlantıları link.txt

Tüm bağlantılar dosyasını indirme komutu

    cat links.txt | wget -i
    
verilen cevap DreamCoder 19.05.2015 04:54

Etiketlerdeki diğer soruları oku