====== wget : téléchargeur en ligne de commande ======
* Objet : Utilisation de wget, un logiciel de téléchargement en ligne de commande
* Niveau requis : {{tag>débutant avisé}}
* Commentaires : //Les téléchargeurs des divers navigateurs ont tous leurs inconvénients. Wget est parfait, lui :-)//
* Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)
* Suivi : {{tag>à-placer}}
* Création par [[user>smolski]] le 18/08/2010
* Testé par <...> le <...>
* Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=2882|ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
===== Présentation =====
''wget'' est un programme en ligne de commande non interactif de téléchargement de fichiers depuis le Web.
Il supporte les protocoles HTTP, HTTPS et FTP ainsi que le téléchargement au travers des proxies HTTP.
===== Installation =====
wget est installé par défaut.
Sinon :
apt-get update && apt-get install wget
===== Synopsis : =====
wget [options] [url]
===== Options principales =====
^ Options ^ Options longues (s'écrivent avec 2 tirets) ^ Commentaires ^
|''-V'' | ''--version'' | Renseigne sur la version de Wget. |
|''-h'' | ''--help'' | Affiche toutes les options disponibles. |
|''-i'' //fichier// | ''--input-file=''//fichier// | Lit les adresses depuis le fichier texte //fichier//. |
|''-N'' | ''--timestamping'' | Active le time-stamping. Permet d'écraser les fichiers sur la destination s'ils existent |
|''-t'' //n// | ''--tries=''//n// | Définit le nombre de tentatives à //n//, 0 ou inf pour un nombre illimité de tentatives. (Par défaut //n//=20 sauf erreur fatale.) |
|''-c'' | ''--continue'' | Reprend un téléchargement interrompu. |
|''-S'' | ''--server-response'' | Affiche les messages envoyés par les serveurs FTP ou HTTP. |
|''-Y'' | | on/off active ou désactive le support proxy. |
|''-nd'' | ''--no-directories'' | Si cette option est utilisée les fichiers sauvegardés le seront dans un seul et même répertoire. |
|''-r'' | ''--recursive'' | Active le téléchargement récursif. |
|''-l'' //n// | ''--level=''//n// | Indique la profondeur //n// à utiliser lors d'un téléchargement récursif. |
|''-k'' | ''--convert-links'' | Convertit les liens pour être disponible en consultation locale. |
|''-p'' | ''--page-requisites'' | Oblige Wget à télécharger tous les fichiers requis pour une consultation convenable d'une page HTML. |
|''-P'' //dossier// | ''--directory-prefix=''//dossier// | Indique le répertoire de destination //dossier// du téléchargement. |
|''-m'' | ''--mirror'' | Active toutes les options convenables pour faire un miroir. |
| | ''--follow-ftp'' | Sans cette option tous les liens FTP donnés depuis un document HTML seront ignorés. |
|''-H'' | ''--span-hosts'' | Autorise lors d'un téléchargement récursif le changement d'hôtes. |
|''-np'' | ''--no-parent'' | Ne remonte pas les répertoires parents. |
|''-A'' //suffixes//| ''--accept=''//suffixes// | Permet de ne télécharger que le type de fichier choisi. |
|''-R'' //suffixes//| ''--reject=''//suffixes// | Permet de ne pas télécharger le type de fichier choisi. |
|''-o'' //fichier// | ''--output-file=''//fichier// | Permet d'enregistrer tous les messages de log de Wget dans un fichier //fichier// (en effaçant le contenu précédent). |
|''-O'' //fichier// | ''--output-document=''//fichier// | (//La lettre O majuscule//) Indique le fichier cible((de destination)) où s'écrira le contenu du téléchargement du fichier distant. |
|''-a'' //fichier// | ''--append-output=''//fichier// | Idem que ''-o'' sauf que les messages sont ajoutés à la suite du fichier empêchant ainsi d' écraser l' ancien fichier. |
|''-U'' //agent// | ''--user-agent=''//agent// | Indique au serveur HTTP que le client est **agent** et non **wget**. |
| | ''--limit-rate=''//30K// | Permet de limiter le débit, ici à 30 ko/s. |
===== Les utilisations =====
==== Exemples d'utilisation courante ====
== Télécharger simplement un fichier ==
* Télécharger simplement un fichier :
wget http://www.site.org/rep/01/fichier.txt
Le fichier sera alors enregistré dans le répertoire courant (voir les commandes [[:doc:programmation:shell:cd|cd]].)
== Reprendre un téléchargement ==
* Reprendre un téléchargement si celui-ci est incomplet :
wget -c ftp://serveur.org/rep/01/fichier.txt
Par défaut, sans l'option ''-c'', **wget** créerait un nouveau fichier //fichier.txt.1// au lieu de reprendre l'existant.
== Téléchargement dirigé vers le répertoire_cible ==
* Dans ce cas le téléchargement sera dirigé vers le répertoire_cible :
wget -P /chemin/du/répertoire_cible http://www.site.org/fichier_distant
== Téléchargement du contenu ==
* Dans ce cas, avec la lettre O majuscule, le téléchargement du contenu du fichier_distant sera écrit dans le fichier_cible :
wget -O /chemin/du/fichier_cible http://www.site.org/fichier_distant
== Les répertoires parent ignorés ==
* Dans ce cas seul le répertoire ''01'' et ses enfants seront copiés, les répertoires parent étant ignorés (''-np'') :
wget -r -np http://www.site.org/rep/01/
== Enregistrer dans le même dossier ==
* Ici tous les fichiers téléchargés seront enregistrés dans le même dossier (sans recréation de l'arborescence présente sur le site web (''-nd'')) :
wget -r -nd http://www.site.org/rep/01/
== FTP avec authentification ==
* Télécharger sur un FTP avec authentification (ici le nom d'utilisateur est paul et son mot de passe 123) :
wget ftp://paul:123@serveur.org/fichier
==== Exemples d'utilisation avancée ====
* Télécharger les URL contenues dans un fichier :
wget -i fichier
* Télécharge récursivement le site (''-r'') et enregistre les logs dans le fichier ''wgetlog'' (''-o'') en limitant le débit du téléchargement à 30 Ko/s (''--limite-rate=30k'') :
wget -r --limit-rate=30k http//www.site.org/ -owgetlog
* Téléchargement avec une profondeur de 4 (''-l4'') et en enregistrant les messages à la suite du fichier wgetlog déjà créé (''-awgetlog'') :
wget -r -l4 http://www.site.org/ -awgetlog
* Dans ce cas seul les fichiers portant l'extension .txt seront téléchargés (''-A.txt'') :
wget -r -l3 -A.txt ftp://serveur.org/
* Ici seul les fichiers portant l'extension ''.jpg'' seront téléchargés (''-A.jpg''), les logs seront inscrits à la suite du fichier wgetlog (''-awgetlog'') et wget téléchargera à partir des adresses indiquées dans le fichier texte ''maliste'' (''-imaliste'') :
wget -r -A.jpg -awgetlog -imaliste.txt
* Télécharger le site récursivement avec une profondeur infinie (''-linf''), convertit les liens pour une consultation en local (''-k''), rapatrie tous les fichiers nécessaires à l'affichage convenable d'une page HTML (''-p'') et renomme toutes les pages HTML avec l'extension .html (''-E'') :
wget -r -linf -k -p -E http://www.site.org/
===== Références =====
//La documentation //**ubuntu**// en français qui reste reine en la matière, merci de leur contribution pour le libre ://
* http://doc.ubuntu-fr.org/wget
//Un man en français, indispensable !//
* http://www.delafond.org/traducmanfr/man/man1/wget.1.html