Wie kann ich bestimmte Verzeichnisse bei der Verwendung von wget ausschließen?

12

Ich möchte ein Verzeichnis von einem FTP herunterladen, das einige Quellcodes enthält. Anfangs habe ich das gemacht:

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

Leider ist das Verzeichnis selbst das Ergebnis einer SVN-Prüfung, sodass es viele .svn-Verzeichnisse gibt und das Crawlen über diese Verzeichnisse länger dauern würde. Ist es möglich, diese .svn-Verzeichnisse auszuschließen?

anta40
quelle

Antworten:

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/*
josejavierfm
quelle
1
Dies scheint tatsächlich der richtige Kommentar zu sein. Der Schalter zum Ausschließen von Verzeichnissen führt keine Muster / regulären Ausdrücke aus, daher müssen Sie den gesamten Pfad (von root) einschließen. Die Antwort mit der höheren Stimme scheint für alle außer den trivialen Fällen falsch zu sein.
John O
1
Genau. Obwohl in der Dokumentation angegeben ist, dass Platzhalter verwendet werden können, konnte ich sie nicht zum Laufen bringen.
Diomidis Spinellis
2
Platzhalter funktionieren, werden jedoch zuerst auf Shell-Ebene interpretiert, sodass Sie ihnen entkommen müssen, um zu arbeiten.
Joop Kiefte
5
wget --exclude-directories=.svn -r ftp://path/to/src
Quanten
quelle