Aller au contenu

Le système d'exploitation GNU-Linux/wget

Un livre de Wikilivres.



La commande wget permet de télécharger un fichier depuis la ligne de commande :

  $ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.23.tar.bz2
  --13:16:02--  http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.23.tar.bz2
             => `linux-2.6.23.tar.bz2'
  Résolution de www.kernel.org... 204.152.191.5, 204.152.191.37
  Connexion vers www.kernel.org[204.152.191.5]:80...connecté.
  requête HTTP transmise, en attente de la réponse...200 OK
  Longueur: 45,488,158 [application/x-bzip2]
 
  9% [===>                                          ] 4,245,225    630.29K/s    ETA 01:28

Pour utiliser un proxy, il faut définir la variable d'environnement http_proxy. Exemple :

http_proxy=monproxy:3128 wget http://apache.cict.fr/ant/source/apache-ant-1.7.0-src.tar.gz

wget sur ftp

wget est également compatible avec le protocole ftp. Il est ainsi capable de télécharger un fichier ou un ensemble de fichier depuis un ftp distant.

 # wget ftp://login:passwd@ftp.host.net/thedir/* 

Pour télécharger les sous-répertoire et fichiers on utilise l'option "-r".

L'option "-nH" permet de ne pas sauvegarder le nom d'hôte, autrement wget fera la copie vers un nouveau dossier créé portant le nom de l'hôte du serveur ftp.

Utilisation de base

[modifier | modifier le wikicode]

Typiquement Wget s'utilise par la ligne de commande, avec un ou plusieurs URLs passés en paramètres. De nombreuses options permettent d'affiner le comportement souhaité (téléchargement multiple, suivre les liens...).

# Télécharge la page à la racine du site exemple.fr dans un ficher
# nommé "index.html".
wget http://www.exemple.fr/
# Télécharger les sources de Wget depuis le serveur FTP de GNU.
wget ftp://ftp.gnu.org/pub/gnu/wget/wget-latest.tar.gz

Il est possible de télécharger automatiquement plusieurs URLs dans une hiérarchie de dossiers.

# Télécharge tous les fichiers *.gif d'un serveur web
# (Les syntaxes de type glob, comme "wget http://www.serveur.com/dir/*.gif", ne marche que avec FTP)
wget -e robots=off -r -l1 --no-parent -A.gif http://www.serveur.com/dir/
# Télécharge la page racine de exemple.fr, avec les images et les 
# feuilles de styles utilisées pour afficher la page, et convertit les 
# URLs internes pour fonctionner avec les copies locales.
wget -p -k http://www.exemple.fr/
# Télécharge le contenu entier de exemple.fr
wget -r -l 0 http://www.exemple.fr/