Dans ce guide pratique, nous allons explorer deux commandes essentielles pour télécharger des fichiers via la ligne de commande Linux.
Les exemples présentés utilisent Ubuntu, mais les commandes restent identiques pour toutes les distributions Linux (à l'exception de l'installation des paquets).
Téléchargement avec wget
L'utilitaire wget constitue l'un des gestionnaires de téléchargement les plus répandus dans l'écosystème Linux et UNIX. Il permet de récupérer un fichier unique, plusieurs fichiers, un répertoire complet ou même l'intégralité d'un site web.
Cet outil fonctionne en mode non-interactif, ce qui facilite son utilisation en arrière-plan et son intégration dans des scripts automatisés. Des applications comme uGet utilisent d'ailleurs wget comme moteur de téléchargement.
Installation de wget
La plupart des distributions Linux incluent wget par défaut. Si ce n'est pas le cas, vous pouvez l'installer via le gestionnaire de paquets de votre système.
Sur les distributions basées sur Ubuntu et Debian, exécutez :
sudo apt install wget
Télécharger un fichier ou une page web
L'utilisation de base consiste à fournir l'URL du fichier à télécharger. Le fichier sera enregistré dans le répertoire courant sous son nom d'origine.
wget https://exemple.com/fichier.tar.gz
Pour télécharger plusieurs fichiers, créez un fichier texte contenant les URLs (une par ligne), puis utilisez l'option -i :
wget -i liste_telechargements.txt
Enregistrer sous un nom personnalisé
Par défaut, les pages web sont souvent enregistrées sous le nom index.html. Pour spécifier un nom de fichier différent, utilisez l'option -O (lettre O majuscule) :
wget -O mon_fichier.html https://exemple.com/page
Télécharger un répertoire complet
Si vous devez récupérer l'ensemble d'un répertoire sur un serveur FTP, employez l'option récursive -r :
wget -r ftp://adresse_serveur.com/repertoire
Télécharger un site web entier
Il est tout à fait possible de dupliquer un site web complet localement. L'option -m active le mode miroir.
Pour un résultat optimal, ajoutez ces options complémentaires :
convert-links: convertit les liens internes vers les ressources localespage-requisites: télécharge les éléments supplémentaires comme les feuilles de style
wget -m --convert-links --page-requisites https://siteweb_exemple.com
Reprendre un téléchargement interrompu
Si un téléchargement est interrompu (par exemple avec CTRL+C), l'option -c permet de reprendre là où il s'est arrêté :
wget -c https://fichier_volumineux.tar.gz
Téléchargement avec curl
L'utilitaire curl représente une alternative populaire à wget pour le téléchargement de fichiers depuis le terminal. Bien que son utilisation soit légèrement différente, il offre des fonctionnalités similaires.
Installation de curl
Bien que curl ne soit pas toujours préinstallé, il est disponible dans les dépôts officiels de la plupart des distributions.
Pour Ubuntu et les distributions Debian-based :
sudo apt install curl
Télécharger un fichier ou une page web
Sans option particulière, curl affiche le contenu du ficheir directement dans le terminal. Pour télécharger et sauvegarder le fichier, utilisez l'option -O (lettre O majuscule) :
curl -O https://exemple.com/document.pdf
Pour télécharger plusieurs fichiers simultanément, spécifiez simplement plusieurs URLs :
curl -O https://exemple.com/fichier1.zip https://exemple.com/fichier2.zip
Notez que curl fonctionne différemment de wget. Contrairement à wget qui sauvegarde automatiquement une page web sous index.html, curl peut générer une erreur si le nom du fichier distant n'est pas explicite.
Enregistrer sous un nom personnalisé
Pour attribuer un nom spécifique au fichier téléchargé (différent du nom original), utilisez l'option -o (lettre o minuscule) :
curl -O sauvegarde.html https://exemple.com/page
Gérer les redirections
Dans certains cas, l'URL peut être redirigée vers une autre adresse. L'option -L permet à curl de suivre ces redirections jusqu'au fichier final :
curl -L -O https://URL_redirigee.com/fichier
Reprendre un téléchargement suspendu
Comme avec wget, l'option -C permet de reprendre un téléchargement interrompu :
curl -C - -O https://fichier_volumineux.tar.gz
Comparaison
Linux offre naturellement plusieurs approches pour effectuer une même tâche. Les commandes wget et curl constituent les outils les plus répandus pour le téléchargement en ligne de commande, mais d'autres utilitaires existent également.
Pour les téléchargements simples et directs, wget s'avère généralement plus straightforward. Sa syntaxe plus intuitive évite les confusions possibles avec les options de curl, notamment concernant la gestion des noms de fichiers et des redirections.