GNU/Linux >> Tutoriels Linux >  >> Linux

Comment utiliser Wget pour télécharger récursivement des fichiers depuis un répertoire web ?

Question : Le site intranet de mon entreprise héberge des gigaoctets d'outils logiciels et d'applications. J'ai essayé de télécharger tout cela via la commande wget tout en conservant la même structure de répertoires (le répertoire source a organisé des outils sous différentes catégories, ce que j'aime conserver). Voici un exemple de répertoire Web intranet - http://intranet.company.com/software-tools/ . Le "software-tools" est le répertoire qui contient de nombreux sous-répertoires et fichiers. Je voudrais télécharger tous ceux-ci de manière récursive en utilisant la commande wget. Mais je n'arrive pas à trouver les bonnes options pour wget? Est-ce que quelqu'un de techglimpse peut m'aider? – Naveen.

Réponse :

wget est l'utilitaire de ligne de commande pour télécharger des fichiers à partir d'un serveur Web distant. Il vous permet de télécharger un fichier spécifique, de parcourir un répertoire (je veux dire, de manière récursive) et de télécharger également des fichiers à partir de sous-répertoires.

wget téléchargement récursif

# wget  -r http://intranet.company.com/software-tools/

La commande ci-dessus téléchargera tous les fichiers et répertoires dans le répertoire "software-tools". Mais rappelez-vous, il téléchargera également le fichier "index.html" sous le répertoire "software-tool" et ainsi que dans les sous-répertoires. Pour éviter cela, vous devez utiliser l'option de rejet avec la valeur "index.html".

option de rejet wget

# wget  -r --reject "index.html*" http://intranet.company.com/software-tools/

Remarque : L'option récursive pour wget ne fonctionnera que si la liste des répertoires a été autorisée par le serveur Web.

Exemple de résultat :

::::::::::::::::::::::::::
 Removing intranet.company.com/software-tools/index.html?C=M;O=D since it should be rejected.
 ::::::::::::::::::::::::::

Ne montez pas dans le répertoire parent pendant le téléchargement récursif à l'aide de wget

Si vous ne souhaitez pas que wget suive le lien dans l'index du répertoire et remonte vers le répertoire parent, l'option "–no-parent" doit être utilisée comme ci-dessous.

wget -r --no-parent --reject "index.html*" http://intranet.company.com/software-tools/

Vous trouverez plus d'informations sur man wget.


Linux
  1. Comment télécharger des fichiers à partir du serveur SFTP à l'aide d'un script python

  2. wget vs curl :comment télécharger des fichiers à l'aide de wget et curl

  3. Comment utiliser la commande 'mv' pour déplacer des fichiers sauf ceux d'un répertoire spécifique ?

  4. Comment déplacer tous les fichiers du répertoire courant vers le répertoire supérieur ?

  5. Comment utiliser rsync depuis un PC Windows vers un serveur Linux distant ?

Comment utiliser la commande wget avec des exemples

Comment télécharger ou télécharger des fichiers/répertoires à l'aide de sFTP sous Linux

Comment télécharger des fichiers à partir de serveurs Linux distants

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

Comment lister les fichiers de manière récursive sous Linux

Comment lister les fichiers récemment supprimés d'un répertoire ?