GNU/Linux >> Tutoriels Linux >  >> Linux

Le guide de téléchargement ultime de Wget avec 15 exemples impressionnants

wget L'utilitaire est la meilleure option pour télécharger des fichiers depuis Internet. wget peut à peu près gérer toutes les situations de téléchargement complexes, y compris les téléchargements de fichiers volumineux, les téléchargements récursifs, les téléchargements non interactifs, les téléchargements de fichiers multiples, etc.,

Dans cet article, voyons comment utiliser wget pour divers scénarios de téléchargement à l'aide de 15 exemples impressionnants de wget.

1. Télécharger un fichier unique avec wget

L'exemple suivant télécharge un seul fichier depuis Internet et le stocke dans le répertoire courant.

$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2

Pendant le téléchargement, une barre de progression s'affichera avec les informations suivantes :

  •  % d'achèvement du téléchargement (par exemple, 31 %, comme indiqué ci-dessous)
  • Nombre total d'octets téléchargés jusqu'à présent (par exemple, 1 213 592 octets, comme indiqué ci-dessous)
  • Vitesse de téléchargement actuelle (par exemple, 68,2 K/s, comme indiqué ci-dessous)
  • Temps restant pour télécharger (par exemple, eta 34 secondes, comme indiqué ci-dessous)

Téléchargement en cours :

$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Saving to: `strx25-0.9.2.1.tar.bz2.1'

31% [=================> 1,213,592   68.2K/s  eta 34s

Téléchargement terminé :

$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Saving to: `strx25-0.9.2.1.tar.bz2'

100%[======================>] 3,852,374   76.8K/s   in 55s    

2009-09-25 11:15:30 (68.7 KB/s) - `strx25-0.9.2.1.tar.bz2' saved [3852374/3852374]

2. Télécharger et stocker avec un nom de fichier différent à l'aide de wget -O

Par défaut, wget choisira le nom de fichier à partir du dernier mot après la dernière barre oblique, ce qui peut ne pas toujours être approprié.

Mauvais : L'exemple suivant téléchargera et stockera le fichier avec le nom :download_script.php?src_id=7701

$ wget http://www.vim.org/scripts/download_script.php?src_id=7701

Même si le fichier téléchargé est au format zip, il sera stocké dans le fichier comme indiqué ci-dessous.

$ ls
download_script.php?src_id=7701

Correct : Pour corriger ce problème, nous pouvons spécifier le nom du fichier de sortie à l'aide de l'option -O comme :

$ wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701

3. Spécifiez la vitesse de téléchargement / le taux de téléchargement à l'aide de wget –limit-rate

Lors de l'exécution du wget, il essaiera par défaut d'occuper toute la bande passante possible. Cela peut ne pas être acceptable lorsque vous téléchargez des fichiers volumineux sur des serveurs de production. Donc, pour éviter cela, nous pouvons limiter la vitesse de téléchargement en utilisant le -limit-rate comme indiqué ci-dessous.

Dans l'exemple suivant, la vitesse de téléchargement est limitée à 200k

$ wget --limit-rate=200k http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2

4. Continuez le téléchargement incomplet en utilisant wget -c

Redémarrez un téléchargement qui s'est arrêté au milieu en utilisant l'option wget -c comme indiqué ci-dessous.

$ wget -c http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2

Ceci est très utile lorsque vous avez lancé un très gros téléchargement de fichier qui a été interrompu au milieu. Au lieu de recommencer tout le téléchargement, vous pouvez recommencer le téléchargement là où il a été interrompu en utilisant l'option -c

Remarque : Si un téléchargement est arrêté au milieu, lorsque vous redémarrez le téléchargement sans l'option -c, wget ajoutera automatiquement .1 au nom de fichier car un fichier avec le nom précédent existe déjà. Si un fichier avec .1 existe déjà, il téléchargera le fichier avec .2 à la fin.

5. Télécharger en arrière-plan avec wget -b

Pour un téléchargement volumineux, mettez le téléchargement en arrière-plan en utilisant l'option wget -b comme indiqué ci-dessous.

$ wget -b http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Continuing in background, pid 1984.
Output will be written to `wget-log'.

Il lancera le téléchargement et vous renverra l'invite du shell. Vous pouvez toujours vérifier l'état du téléchargement en utilisant tail -f comme indiqué ci-dessous.

$ tail -f wget-log
Saving to: `strx25-0.9.2.1.tar.bz2.4'

     0K .......... .......... .......... .......... ..........  1% 65.5K 57s
    50K .......... .......... .......... .......... ..........  2% 85.9K 49s
   100K .......... .......... .......... .......... ..........  3% 83.3K 47s
   150K .......... .......... .......... .......... ..........  5% 86.6K 45s
   200K .......... .......... .......... .......... ..........  6% 33.9K 56s
   250K .......... .......... .......... .......... ..........  7%  182M 46s
   300K .......... .......... .......... .......... ..........  9% 57.9K 47s

Assurez-vous également de consulter notre précédent article multitail sur la façon d'utiliser efficacement la commande tail pour afficher plusieurs fichiers.

6. Masquer l'agent utilisateur et afficher wget comme un navigateur à l'aide de wget –user-agent

Certains sites Web peuvent vous interdire de télécharger sa page en identifiant que l'agent utilisateur n'est pas un navigateur. Vous pouvez donc masquer l'agent utilisateur en utilisant les options –user-agent et afficher wget comme un navigateur, comme indiqué ci-dessous.

$ wget --user-agent="Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092416 Firefox/3.0.3" URL-TO-DOWNLOAD

7. Tester l'URL de téléchargement avec wget –spider

Lorsque vous allez effectuer un téléchargement programmé, vous devez vérifier si le téléchargement se déroulera correctement ou non à l'heure prévue. Pour ce faire, copiez la ligne exactement à partir du planning, puis ajoutez l'option –spider à vérifier.

$ wget --spider DOWNLOAD-URL

Si l'URL donnée est correcte, elle indiquera

$ wget --spider download-url
Spider mode enabled. Check if remote file exists.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Remote file exists and could contain further links,
but recursion is disabled -- not retrieving.

Cela garantit que le téléchargement réussira à l'heure prévue. Mais lorsque vous avez donné une mauvaise URL, vous obtenez l'erreur suivante.

$ wget --spider download-url
Spider mode enabled. Check if remote file exists.
HTTP request sent, awaiting response... 404 Not Found
Remote file does not exist -- broken link!!!

Vous pouvez utiliser l'option spider dans les scénarios suivants :

  • Vérifier avant de programmer un téléchargement.
  • Surveiller si un site Web est disponible ou non à certains intervalles.
  • Consultez une liste de pages de votre signet et découvrez quelles pages existent toujours.

8. Augmenter le nombre total de nouvelles tentatives à l'aide de wget –tries

Si la connexion Internet a un problème et si le fichier de téléchargement est volumineux, il y a un risque d'échec du téléchargement. Par défaut, wget tente 20 fois de réussir le téléchargement.

Si nécessaire, vous pouvez augmenter le nombre de nouvelles tentatives à l'aide de l'option –tries, comme indiqué ci-dessous.

$ wget --tries=75 DOWNLOAD-URL

9. Télécharger plusieurs fichiers/URL à l'aide de Wget -i

Tout d'abord, stockez tous les fichiers ou URL de téléchargement dans un fichier texte sous :

$ cat > download-file-list.txt
URL1
URL2
URL3
URL4

Ensuite, donnez download-file-list.txt comme argument à wget en utilisant l'option -i comme indiqué ci-dessous.

$ wget -i download-file-list.txt

10. Télécharger un site Web complet à l'aide de wget –mirror

Voici la ligne de commande que vous souhaitez exécuter lorsque vous souhaitez télécharger un site Web complet et le rendre disponible pour une visualisation locale.

$ wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL
  • –mirror :active les options adaptées à la mise en miroir.
  • -p :télécharge tous les fichiers nécessaires au bon affichage d'une page HTML donnée.
  • –convert-links :après le téléchargement, convertit les liens dans le document pour une visualisation locale.
  • -P ./LOCAL-DIR :enregistre tous les fichiers et répertoires dans le répertoire spécifié.

11. Rejeter certains types de fichiers lors du téléchargement à l'aide de wget –reject

Vous avez trouvé un site Web utile, mais vous ne souhaitez pas télécharger les images, vous pouvez spécifier ce qui suit.

$ wget --reject=gif WEBSITE-TO-BE-DOWNLOADED

12. Consigner les messages dans un fichier journal au lieu de stderr Utilisation de wget -o

Lorsque vous vouliez que le journal soit redirigé vers un fichier journal au lieu du terminal.

$ wget -o download.log DOWNLOAD-URL

13. Arrêtez le téléchargement lorsqu'il dépasse une certaine taille à l'aide de wget -Q

Lorsque vous souhaitez arrêter le téléchargement lorsqu'il dépasse 5 Mo, vous pouvez utiliser la ligne de commande wget suivante.

$ wget -Q5m -i FILE-WHICH-HAS-URLS

Remarque : Ce quota n'aura pas d'effet lorsque vous téléchargerez une seule URL. Quelle que soit la taille du quota, tout sera téléchargé lorsque vous spécifiez un seul fichier. Ce quota s'applique uniquement aux téléchargements récursifs.

14. Télécharger uniquement certains types de fichiers à l'aide de wget -r -A

Vous pouvez l'utiliser dans les situations suivantes :

  • Télécharger toutes les images d'un site Web
  • Télécharger toutes les vidéos d'un site Web
  • Télécharger tous les fichiers PDF à partir d'un site Web
$ wget -r -A.pdf http://url-to-webpage-with-pdfs/

15. Téléchargement FTP avec wget

Vous pouvez utiliser wget pour effectuer un téléchargement FTP comme indiqué ci-dessous.

Téléchargement FTP anonyme avec Wget

$ wget ftp-url

Téléchargement FTP en utilisant wget avec authentification par nom d'utilisateur et mot de passe.

$ wget --ftp-user=USERNAME --ftp-password=PASSWORD DOWNLOAD-URL

Si vous avez aimé cet article, veuillez l'ajouter à vos favoris avec Delicious ou Stumble.


Linux
  1. Principes de base de Linux :comment télécharger des fichiers sur le shell avec Wget

  2. Top 10 des cas d'utilisation de la commande Wget (avec exemples)

  3. Commande Wget sous Linux avec des exemples

  4. 5 Exemples de commandes Wget pour télécharger des fichiers sous Linux.

  5. Le tutoriel Ultimate Bash Array avec 15 exemples

Comment télécharger des fichiers avec la commande Wget sous Linux

Le guide ultime de la manipulation d'images avec ImageMagick

Synology NAS vers Glacier Backup - Le guide ultime

Le didacticiel Ultimate Tar Command avec 10 exemples pratiques

HowTo:Le didacticiel de commande ultime Logrotate avec 10 exemples

Le guide ultime du débutant sur l'hébergement de sites Web statiques avec Google Firebase (GRATUIT)