Скачать файлы из списка

Как загрузить файлы (перечисленные в текстовом файле), используя wget или другим автоматическим способом?

Пример списка файлов:

www.example.com/1.pdf
www.example.com/2.pdf
www.example.com/3.pdf
133
задан 13 October 2015 в 20:18

8 ответов

В wget есть встроенный флаг для этого: wget -i your_list Подобные вещи можно найти, прочитав man wget

0
ответ дан 13 October 2015 в 20:18

Файл ссылок links.txt

Команда для загрузки файла всех ссылок

    cat links.txt | wget -i
0
ответ дан 13 October 2015 в 20:18

parallel имеет встроенный флаг --arg-file (-a), который будет использовать входной файл в качестве источника, поэтому вы можете избежать cat |. Вы можете использовать

parallel --gnu -a urlfile wget

Или просто parallel --gnu wget < urlfile

0
ответ дан 13 October 2015 в 20:18

Получите их параллельно с

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

По умолчанию он будет запускать столько процессов, сколько у вас ядер, вы можете увеличить его еще в 10 раз, если вы действительно хотите быстро их уменьшить, добавив " -j 20 "после параллели.

0
ответ дан 13 October 2015 в 20:18

Я видел ответ Флориана Дайша.

Я заставил его работать, включив параметр bqc в команду.

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

Все загрузки начались параллельно в фоновом режиме.

  • -b: Фон. Перейти к фону сразу после запуска
  • -q: Тихо. Отключите вывод wget
  • -c: Продолжить. Продолжить получение частично загруженного файла
0
ответ дан 13 October 2015 в 20:18
awk '{print "http://" $0;}' list.txt | xargs -l1 wget

где list.txt является Вашим файлом списка

5
ответ дан 13 October 2015 в 20:18
xargs -i wget 'http://{}'  < your_list
0
ответ дан 13 October 2015 в 20:18

Я просто протестировал это:

xargs -a download_file -L1 wget

Это работает на меня. Ссылки в txt файле должны быть в отдельных строках.

0
ответ дан 22 November 2019 в 22:54

Другие вопросы по тегам:

Похожие вопросы: