Загрузка нескольких файлов с помощью wget и параметров обработки

2414
coure2011

Как я могу скачать несколько файлов с помощью wget? Я также хочу переименовать файлы. Вот команды, которые я запускаю одна за другой (копирование / вставка на терминал):

 wget -c --load-cookies cookies.txt http://www.filesonic.com/file/812720774/PS11.rar -O part11.rar wget -c --load-cookies cookies.txt http://www.filesonic.com/file/812721094/PS12.rar -O part12.rar wget -c --load-cookies cookies.txt http://www.filesonic.com/file/812720804/PS13.rar -O part13.rar wget -c --load-cookies cookies.txt http://www.filesonic.com/file/812720854/PS14.rar -O part14.rar ........ and so on.. 

Что я могу сделать, чтобы загрузить все эти файлы один за другим?

0
Это очень похоже на http://superuser.com/questions/336669/downloading-multiple-files-and-specifying-output-filenames-with-wget RedGrittyBrick 12 лет назад 0

1 ответ на вопрос

2
slhck

Вы, вероятно, хотите короткий сценарий оболочки, как это:

#!/usr/bin/env bash while read line do wget -c --load-cookies cookies.txt $line -O $ done < filelist 

Где filelistтекстовый файл, который содержит каждую ссылку для скачивания, одну за другой. $извлечет само имя файла и, следовательно, выдаст что-то похожее на следующие команды:

wget -c --load-cookies cookies.txt http://download/file1.rar -O file1.rar wget -c --load-cookies cookies.txt http://download/file2.rar -O file2.rar wget -c --load-cookies cookies.txt http://download/file3.rar -O file3.rar 

Если вы хотите запустить их параллельно, вы можете просто заключить wgetстроку в скобки, чтобы запустить ее в подоболочке.

(wget -c --load-cookies cookies.txt $line -O $) 

Или добавить амперсанд. Это, однако, будет означать, что загрузка все равно будет выполняться после отмены сценария. Вам придется убивать их вручную для каждого процесса.

wget -c --load-cookies cookies.txt $line -O $ & 

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