как сделать wget повторной загрузки, если скорость опускается ниже определенного порога?


13

Я пытаюсь загрузить большой файл размером 2 ГБ с помощью wget, но через несколько минут он, похоже, не работает.

Я ^ C это, и wget это снова [с --continueопцией], и он начинает загрузку снова.

Есть ли способ автоматизировать повторную загрузку, когда она останавливается? Благодарность

Ответы:


20

Вы можете использовать --triesопцию.

   --tries=number
       Set number of retries to number.  Specify 0 or inf for infinite
       retrying.  The default is to retry 20 times, with the exception of
       fatal errors like "connection refused" or "not found" (404), which
       are not retried.

Так что --tries=0надо делать свое дело.

Это в сочетании с --read-timeout=secondsтоже. В секунд относится к времени простоя: если в какой -то момент в загрузке, никакие данные не получены в течение более , чем заданное количество секунд, чтение терпит неудачу и загрузка перезапускается.

Итак, последняя команда:

wget -c --tries=0 --read-timeout=20 [URL]


1
Проблема в том, что wget не выходит. Он просто «загружается» со скоростью 0 КБ / с .. :(
— Мэтт

8
Ok. Возможно, вы могли бы использовать --read-timeout=secondsвместо этого. «Время» этого тайм-аута относится к времени простоя: если в какой-либо момент загрузки данные не принимаются в течение более указанного количества секунд, чтение завершается неудачно и загрузка возобновляется. Эта опция напрямую не влияет на продолжительность всей загрузки. Конечно, удаленный сервер может прервать соединение раньше, чем требует этот параметр. Время ожидания по умолчанию составляет 900 секунд.
— Пабло Зубиета

Да! Вот и все! Должно быть, я прочитал это давным-давно, когда я прочитал руководство по wget [почти все], и я вернулся и не смог его найти.
— Мэтт

Разве это не должно включать в себя --continue?
— sfyn

@sfyn: Да, я добавил -cк ответу, так что если что-то не получится, вы можете продолжить с того места, где остановились. Благодарю.
— Пабло Зубиета

0

Wget пытается продолжить загрузку через 15 минут после сбоя. Если вы оставите его на ночь, это должно сработать.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.