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?

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/*

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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.