Comment exclure certains répertoires lors de l'utilisation de wget?


12

Je voudrais télécharger un répertoire à partir d'un FTP, qui contient des codes sources. Au départ, je l'ai fait:

wget -r ftp://path/to/src

Malheureusement, le répertoire lui-même est le résultat d'une extraction SVN, il y a donc beaucoup de répertoires .svn, et les parcourir prendrait plus de temps. Est-il possible d'exclure ces répertoires .svn?

Réponses:


18
wget -X directory_to_exclude[,other_directory_to_exclude] -r ftp://URL_ftp_server

SERVER
    |-logs
    |-etc
    |-cache
    |-public_html
      |-images
      |-videos ( want to exclude )
      |-files
      |-audio  (want to exclude)

wget -X /public_html/videos,/public_html/audio ftp:SERVER/public_html/*

1
Cela semble en fait être le bon commentaire. Le commutateur exclude-répertoires ne fait pas de modèles / expressions régulières, vous devez donc inclure le chemin complet (à partir de la racine). La réponse la plus votée semble être incorrecte pour tous sauf les cas triviaux.
John O

1
Je suis d'accord. Bien que la documentation indique que les caractères génériques peuvent être utilisés, je n'ai pas pu les faire fonctionner.
Diomidis Spinellis

2
Les caractères génériques fonctionnent, mais sont d'abord interprétés au niveau du shell, vous devez donc leur échapper pour fonctionner.
Joop Kiefte

5
wget --exclude-directories=.svn -r ftp://path/to/src
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.