Dateien von einer Liste herunterladen

112

Wie kann ich Dateien (die in einer Textdatei aufgeführt sind) mit wget oder auf andere automatische Weise herunterladen?

Liste der Beispieldateien:

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

7 Antworten

197

wget hat dafür ein integriertes Flag: wget -i your_list Sie finden diese Art von Dingen, indem Sie man wget

lesen     
aureianimus 12.02.2012 17:56
82

Holen Sie sie parallel zu

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

Standardmäßig werden so viele Prozesse ausgeführt, wie Sie über Kerne verfügen. Sie können diesen Wert wahrscheinlich um das 10-fache erhöhen, wenn Sie sie wirklich schnell herunterziehen möchten, indem Sie "-j 20" nach Parallel hinzufügen.

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

parallel verfügt über ein integriertes Flag --arg-file ( -a ), das eine Eingabedatei als Quelle verwendet, sodass Sie cat | vermeiden können. Sie können

verwenden
parallel --gnu -a urlfile wget

Oder einfach parallel --gnu wget < urlfile

    
yxogenium 18.06.2016 14:01
5
awk '{print "http://" $0;}' list.txt | xargs -l1 wget

wobei list.txt Ihre Listendatei ist

    
flo 12.02.2012 17:51
4

Ich habe die Antwort von Florian Diesch gesehen.

Ich habe es geschafft, indem ich den Parameter bqc in den Befehl aufgenommen habe.

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

Alle Downloads wurden parallel im Hintergrund gestartet.

  • -b : Hintergrund. Gehe sofort nach dem Start in den Hintergrund
  • -q : Ruhig. Deaktivieren Sie die Ausgabe von wget
  • -c : Weiter. Holen Sie sich weiterhin eine teilweise heruntergeladene Datei
streetlife 04.05.2015 18:56
1

Linkdatei link.txt

Befehl zum Herunterladen aller Verknüpfungsdateien

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

Tags und Links