Afin d'éviter le --, -K/s
situations que vous pouvez utiliser --read-timeout=seconds
. Cela mettra fin à la connexion après le nombre de secondes.
Si vous avez besoin d'aller plus loin, vous pouvez utiliser cette configuration
wget --retry-connrefused --waitretry=1 --read-timeout=20 --timeout=15 -t 0
Ce sera réessayer connexions refusées et similaires fatal les erreurs ( --retry-connrefused
), il attendra 1 seconde avant de réessayer ( --waitretry
), il attendra au maximum 20 secondes si aucune donnée n’est reçue, puis réessaye ( --read-timeout
), il faudra attendre 15 secondes au maximum avant l'expiration de la connexion initiale ( --timeout
) et enfin il va réessayer un nombre infini de fois ( -t 0
).
Vous voudrez peut-être aussi mettre ceci dans un while
boucle afin d'éviter une défaillance du réseau local et similaire. Dans ce cas, vous devez également ajouter --continue
afin de continuer le téléchargement là où vous l'avez laissé. Ce qui suit fonctionne bien dans Bash
while [ 1 ]; do
wget --retry-connrefused --waitretry=1 --read-timeout=20 --timeout=15 -t 0 --continue
if [ $? = 0 ]; then break; fi; # check return value, break if successful (0)
sleep 1s;
done;
En bonus, vous pouvez également utiliser --no-dns-cache
au cas où l'hôte équilibre votre demande entre plusieurs serveurs par DNS.
Clause de non-responsabilité: je ne recommande pas l'utilisation de cette option car elle spammerait l'hôte au cas où la connexion serait instable et qu'il serait peu judicieux de la laisser non surveillée. Cependant, c’est ce que vous voulez au cas où vous auriez vraiment besoin de télécharger quelque chose et que votre connexion ne fonctionne pas correctement.
--read-timeout=900
. Vous pouvez juste attendre 15 minutes et wget redémarre le téléchargement.--tries=number
Cette option définit le nombre de tentatives à numéroter. Spécifiez 0 ou ‘inf’ pour une nouvelle tentative infinie.
wget --tries=70 http://example.com/myfile.zip
devrait le faire.La valeur par défaut est de réessayer 20 fois, avec le exception d'erreurs fatales du type «connexion refusée» ou «introuvable» (404), qui ne sont pas retentées.
la source
Cela aiderait-il? Sur askubuntu.com, j'ai trouvé une question très similaire à celle que vous demandez. Voici le lien pour cela: https://askubuntu.com/questions/72663/how-to-make-wget-retry-download-if-speed-goes-below-certain-threshold
la source