Wget

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine Téléchargement HTTP/HTTPS/FTP en ligne de commande
Commande wget
Contexte Récupération de fichiers, mirroring de sites/répertoires, reprise de téléchargement interrompu
Options clés -c (reprise) · -r/--mirror (récursif) · --limit-rate

wget télécharge des fichiers via HTTP, HTTPS ou FTP en ligne de commande, sans interaction. Il gère nativement la reprise de téléchargement, le mirroring récursif d'un site ou d'un répertoire, l'authentification et le passage par un proxy — ce qui en fait un outil de choix pour les scripts et les tâches non interactives, là où un navigateur ne convient pas.

Téléchargement de base

wget http://example.com/fichier.tgz          # télécharge dans le répertoire courant
wget -O sortie.tgz http://example.com/f.tgz  # renomme le fichier de sortie
wget -q http://example.com/fichier.tgz       # mode silencieux (pas de barre de progression)
wget -c http://example.com/gros-fichier.iso  # reprend un téléchargement interrompu

-c (--continue) est essentiel sur les gros fichiers : si le téléchargement s'arrête, il repart de l'octet déjà reçu plutôt que de tout retélécharger.

Certificat SSL invalide

Pour récupérer un fichier sur un site en HTTPS sans vérifier le certificat (à réserver aux sources de confiance, jamais en production sur une source non maîtrisée) :

wget --no-check-certificate https://exemple.tld/fichier.tar.gz

Limitation de débit

Pour éviter de saturer la bande passante d'un lien partagé :

wget --limit-rate=200k http://example.com/fichier.iso

Authentification

wget --user=alice --password=secret http://example.com/prive/fichier.tgz   # HTTP basic auth
wget ftp://alice:secret@ftp.example.com/fichier.tgz                        # FTP avec identifiants dans l'URL

Passer par un proxy

export http_proxy="http://proxy.exemple.tld:8080"
wget http://www.exemple.tld/fichier.tgz

# proxy avec authentification
export http_proxy="http://utilisateur:motdepasse@proxy.exemple.tld:3128"

unset http_proxy   # ne pas oublier de désactiver le proxy une fois terminé

Miroir d'un site ou d'un répertoire

Pour aspirer un site complet (pages, images, CSS, liens réécrits pour la navigation locale) :

wget --mirror --convert-links --page-requisites --no-parent http://exemple.tld/

Pour récupérer un répertoire de fichiers (dépôt, archive) sans remonter à l'arborescence parente, en aplatissant la structure de dossiers :

wget -nH --cut-dirs=6 -r -np http://exemple.tld/repo/distro/x86_64/8/

-nH (pas de dossier nommé d'après le host), --cut-dirs=N (ignore les N premiers niveaux de répertoire de l'URL), -r (récursif), -np (--no-parent, ne remonte jamais au-dessus du répertoire de départ).