Antworten:
wget hat eine eingebaute Flagge dafür: wget -i your_list
Sie können solche Dinge durch Lesen findenman wget
Holen Sie sich diese parallel mit
cat urlfile | parallel --gnu "wget {}"
Standardmäßig werden so viele Prozesse ausgeführt, wie Kerne vorhanden sind. Sie können diese wahrscheinlich um das 10-fache erhöhen, wenn Sie sie wirklich schnell herunterfahren möchten, indem Sie nach parallel "-j 20" hinzufügen.
xargs -i wget 'http://{}' < your_list
Ich habe Florian Dieschs Antwort gesehen.
Ich habe es funktioniert, indem ich den Parameter bqc
in den Befehl aufgenommen habe.
xargs -i wget -bqc 'http://{}' < download.txt
Alle Downloads begannen parallel im Hintergrund.
-b
: Hintergrund. Gehen Sie sofort nach dem Start in den Hintergrund-q
: Ruhig. Schalten Sie die Ausgabe von wget aus-c
: Fortsetzen. Holen Sie sich weiterhin eine teilweise heruntergeladene DateiLinkdatei links.txt
Befehl zum Herunterladen aller Links
cat links.txt | wget -i
wget -i links.txt
ist der richtige Befehl.
Ich habe das gerade getestet:
xargs -a download_file -L1 wget
Für mich geht das. Links innerhalb der txt-Datei müssen in separaten Zeilen stehen.