Qu'est-ce que Wget ?
Wget est un progiciel gratuit permettant de récupérer des fichiers à l'aide de HTTP, HTTPS, FTP et FTPS, les protocoles Internet les plus utilisés. Il s'agit d'un outil de ligne de commande non interactif, il peut donc être facilement appelé à partir de scripts, de tâches cron, de terminaux sans prise en charge de X-Windows, etc.
Comment installer Wget ?
# Install wget in Ubuntu \ Debian Linux
apt-get install wget
# Install wget on RHEL / CentOS / Fedora
yum install wget
# Install wget on OpenSUSE
zypper install wget
# Install wget on ArchLinux
pacman -Sy wget
# Install wget on FreeBSD
pkg install wget
# Install wget Using FreeBSD Ports Collection
portsnap fetch update
cd /usr/ports/ftp/wget
make install clean
rehash ## or hash -r for 'bash/sh/ksh'
Code language: PHP (php)
Comment utiliser Wget ?
- Maintenant, si nous voulons télécharger un seul fichier en utilisant HTTP, nous tapons :
# Download a single file
wget http://site-name.com/file-name.tar.gz
Code language: Bash (bash)
2. Vous pouvez télécharger une page Web et l'enregistrer dans le dossier de votre choix :
# Download a website
wget -o index.html http://site-name.com/page-url
# Download a website into a different folder
wget --directory-prefix='./home/user/Downloads/site-name/' http://site-name.com/page-url
Code language: Bash (bash)
3. Voici comment télécharger des fichiers à partir de sites Web protégés par mot de passe :
# Download files from password protected websites
wget ‐‐http-user=username ‐‐http-password=password http://site-name.com/path-secret/file.tar.gz
Code language: Bash (bash)
4. Une autre méthode consiste à télécharger un type de fichiers spécifique à partir du site Web :
# Download specific type of files from the website
# This will download all the mp3 files
$ wget --level=2 --recursive --accept mp3 http://site-name.com
# will download all jpeg files
$ wget ‐‐level=1 ‐‐recursive ‐‐no-parent ‐‐accept jpg,JPG http://site-name.com/
Code language: Bash (bash)
5. Une option intéressante consiste à télécharger plusieurs fichiers avec différents protocoles :
# Download multiple files with different protocols
wget http://site-name.com/file.tar.gz ftp://151.232.45.6/picture.jpg
Code language: Bash (bash)
6. Il est également possible de limiter la bande passante d'un fichier que vous téléchargez :
# Limit the bandwidth of a file you are downloading
wget --limit-rate=50k http://site-name.com/file.rar
Code language: Bash (bash)
7. Vous pouvez télécharger un site Web complet si vous le souhaitez avec tous les fichiers et dossiers à l'intérieur :
# Mirror entire websites (all its pages and assets)
wget --mirror --no-parent --continue http://site-name.com
Code language: PHP (php)
8. Vous pouvez mettre des URL dans un fichier puis demander à Wget de télécharger tous les liens du fichier
# Download all of the links in the file
wget ‐‐input filename.txt
Code language: PHP (php)
9. Voici comment reprendre un fichier en cours de téléchargement là où il a été laissé
# Resume a currently download file from where it was left
wget -c http://site-name.com/file.zip
Code language: PHP (php)
10. Télécharger en arrière-plan avec wget -b
# Download in the Background Using wget -b
wget -b http://www.site-name.com/link/filename.tar.bz2
Code language: PHP (php)
11. Vérifiez l'état du téléchargement en utilisant tail -f
# Check the status of the download using tail -f
tail -f wget-log
Saving to: `filename.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
Code language: PHP (php)
12. Une bonne astuce consiste à tester l'URL de téléchargement à l'aide de Wget –spider
# Test download
wget --spider http://site-name.com/link/file.tar.bz2
Code language: PHP (php)
13. Et enfin, voici comment télécharger uniquement certains types de fichiers en utilisant wget -r -A
# Download only certain file types
wget -r -A.pdf http://site-name.com/files-folder/
Code language: PHP (php)
Dans cette leçon, nous avons appris quelques-unes des meilleures façons de gérer Wget. Un outil sans lequel aucun administrateur système ne peut travailler. Pour des exemples supplémentaires, vous pouvez vous référer à la page de manuel du programme.