2 façons de télécharger des fichiers à partir d’un terminal Linux

Si vous êtes bloqué sur le terminal Linux, disons sur un serveur, comment télécharger un fichier depuis le terminal ?

Il n’y a pas de commande de téléchargement sous Linux, mais il existe quelques commandes Linux pour télécharger le fichier.

Dans cette astuce de terminal, vous apprendrez deux façons de télécharger un fichier à l’aide de la ligne de commande sous Linux.

J’utilise Ubuntu ici, mais à part l’installation, le reste des commandes est également valable pour toutes les autres distributions Linux.

Télécharger des fichiers depuis un terminal Linux à l’aide de la commande wget

wget est peut-être le gestionnaire de téléchargement en ligne de commande le plus utilisé pour les systèmes Linux et UNIX. Vous pouvez télécharger un seul fichier, plusieurs fichiers, un répertoire entier ou même un site Web entier à l’aide de wget.

wget n’est pas interactif et peut facilement fonctionner en arrière-plan. Cela signifie que vous pouvez facilement l’utiliser dans des scripts ou même créer des outils comme le gestionnaire de téléchargement uGet.

Voyons comment utiliser wget pour télécharger le fichier depuis le terminal.

Installation de wget

La plupart des distributions Linux sont livrées avec wget préinstallé. Il est également disponible dans le référentiel de la plupart des distributions et vous pouvez facilement l’installer à l’aide du gestionnaire de paquets de votre distribution.

Sur les distributions basées sur Ubuntu et Debian, vous pouvez utiliser la commande apt package manager :

sudo apt install wget

Télécharger un fichier ou une page Web à l’aide de wget

Il vous suffit de fournir l’URL du fichier ou de la page Web. Il téléchargera le fichier avec son nom d’origine dans le répertoire dans lequel vous vous trouvez.

wget URL

Pour télécharger plusieurs fichiers, vous devrez enregistrer leurs URL dans un fichier texte et fournir ce fichier texte en entrée à wget comme ceci :

wget -i download_files.txt

Télécharger des fichiers avec un nom différent en utilisant wget

Vous remarquerez qu’une page Web est presque toujours enregistrée sous le nom index.html avec wget. Ce sera une bonne idée de fournir un nom personnalisé au fichier téléchargé.

Vous pouvez utiliser l’option -O (O majuscule) pour fournir le nom du fichier de sortie lors du téléchargement.

wget -O filename URL

Télécharger un dossier avec wget

Supposons que vous naviguiez sur un serveur FTP et que vous deviez télécharger un répertoire entier, vous pouvez utiliser l’option récursive

wget -r ftp://server-address.com/directory

Télécharger un site Web entier en utilisant wget

Oui, vous pouvez tout à fait le faire. Vous pouvez mettre en miroir un site Web entier avec wget. Par téléchargement d’un site Web entier, j’entends l’ensemble de la structure du site Web destiné au public.

Bien que vous puissiez utiliser l’option miroir -m directement, ce serait une bonne idée d’ajouter :

  • –convert-links : les liens sont convertis de sorte que les liens internes pointent vers la ressource téléchargée au lieu du Web
  • –page-requirements : télécharge des éléments supplémentaires comme des feuilles de style afin que les pages aient une meilleure apparence hors ligne

wget -m --convert-links --page-requisites website_address

Astuce bonus : Reprendre les téléchargements incomplets

Si vous avez interrompu le téléchargement en appuyant sur C pour certaines raisons, vous pouvez reprendre le téléchargement précédent avec l’option -c.

wget -c

Télécharger des fichiers à partir de la ligne de commande Linux en utilisant curl

Comme wget, curl est également l’une des commandes les plus populaires pour télécharger des fichiers dans un terminal Linux. Il y a tellement de façons de utiliser curl largement mais je me concentrerai uniquement sur le simple téléchargement ici.

Installation curl

Bien que curl n’est pas préinstallé, il est disponible dans les dépôts officiels de la plupart des distributions. Vous pouvez utiliser le gestionnaire de paquets de votre distribution pour l’installer.

À installer curl sur Ubuntu et d’autres distributions basées sur Debian, utilisez la commande suivante :

sudo apt install curl

Télécharger des fichiers ou une page Web en utilisant curl

Si tu utilises curl sans aucune option avec une URL, il lira le fichier et l’imprimera sur l’écran du terminal.

Pour télécharger un fichier en utilisant curl commande dans le terminal Linux, vous devrez utiliser l’option -O (O majuscule) :

curl -O URL

Il est plus simple de télécharger plusieurs fichiers sous Linux avec curl. Il vous suffit de spécifier plusieurs URL :

curl -O URL1 URL2 URL3

Garde en tête que curl n’est pas aussi simple que wget. Alors que wget enregistre les pages Web sous le nom index.html, curl se plaindra que le fichier distant n’ait pas de nom pour les pages Web. Vous devrez l’enregistrer avec un nom personnalisé comme décrit dans la section suivante.

Télécharger des fichiers avec un nom différent

Cela peut être déroutant, mais pour donner un nom personnalisé au fichier téléchargé (au lieu du nom de la source d’origine), vous devrez utiliser l’option -o (O minuscule) :

curl -o filename URL

Parfois, curl ne téléchargerait pas simplement le fichier comme vous l’attendez. Vous devrez utiliser l’option -L (pour l’emplacement) pour le télécharger correctement. C’est parce que parfois les liens redirigent vers un autre lien et avec l’option -L, il suit le lien final.

Suspendre et reprendre le téléchargement avec curl

Comme wget, vous pouvez également reprendre un téléchargement en pause en utilisant curl avec l’option -c :

curl -C URL

Conclusion

Comme toujours, il existe plusieurs façons de faire la même chose sous Linux. Le téléchargement de fichiers depuis le terminal n’est pas différent.

wget et curl ne sont que deux des commandes les plus populaires pour télécharger des fichiers sous Linux. Il existe d’autres outils de ligne de commande de ce type. Les navigateurs Web basés sur des terminaux comme elinks, w3m etc peut également être utilisé pour télécharger des fichiers en ligne de commande.

Personnellement, pour un simple téléchargement, je préfère utiliser wget plutôt que curl. C’est plus simple et moins déroutant car vous aurez peut-être du mal à comprendre pourquoi curl impossible de télécharger un fichier au format attendu.

Vos commentaires et suggestions sont les bienvenus.