FTP Verzeichnis runterladen - bestimmte Dateieendungen ausschließen
Hallo.
Ich möchte ein FTP Verzeichniss runterladen und hierbei bestimmte Dateien ausschließen.
In meiner Situation ist dies das Verzeichnis ftp://ftp.gnu.org/pub/gnu/. Es sollen sämtliche Files mit den Endungen *.diff.gz, *.diff.gz.sig sowie *.tar.gz.sig ausgeschlossen werden um Zeit, Traffic und Bandbreite zu sparen. Bei "normalen" FTP Clienten habe ich keinerlei Optionen für ein solches Vorhaben gefunden.
Alternativ wär auch ein kopieren per http möglich. Allerdings ist die Seite nur mit Vezeichnissen aufgebaut und nicht per *.php, *.html o.ä. anhand dessen sich ein Programm die Links suchen könnte.
Ich möchte ein FTP Verzeichniss runterladen und hierbei bestimmte Dateien ausschließen.
In meiner Situation ist dies das Verzeichnis ftp://ftp.gnu.org/pub/gnu/. Es sollen sämtliche Files mit den Endungen *.diff.gz, *.diff.gz.sig sowie *.tar.gz.sig ausgeschlossen werden um Zeit, Traffic und Bandbreite zu sparen. Bei "normalen" FTP Clienten habe ich keinerlei Optionen für ein solches Vorhaben gefunden.
Alternativ wär auch ein kopieren per http möglich. Allerdings ist die Seite nur mit Vezeichnissen aufgebaut und nicht per *.php, *.html o.ä. anhand dessen sich ein Programm die Links suchen könnte.
Please also mark the comments that contributed to the solution of the article
Content-Key: 83083
Url: https://administrator.de/contentid/83083
Printed on: April 19, 2024 at 06:04 o'clock
6 Comments
Latest comment
Hallo,
du willst ein Verzeichnis spiegeln unter Ausschluß einiger Dateien.
Die paar *.sig-Dateien sind ca. 1K groß und die *diff.gz werden auch nicht so ins Gewicht fallen bei einem Gesamtvolumen des Verzeichnisse /pub/gnu von ca. 14 GIGAByte.
Das Anliegen Traffic und Zeit zu sparen ist einfach nur lächerlich, weil es in keinem Verhältnis zueinander steht.
Du wirst aber schon wissen, warum du das Verzeichnis lokal vorrätig brauchst.
Jetzt zu einer Lösung:
RSYNC ist generell die richtige Wahl.
In deinem Fall reicht auch WGET mit folgendem Syntax:
ausgeführt in einem Verzeichnis deiner Wahl.
Da du es nicht für nötig hältst, uns zu verraten unter welchen Betriebsystem das Ganze laufen soll, mußt du dir die WGET-Version selbst suchen.
cu paulepank
du willst ein Verzeichnis spiegeln unter Ausschluß einiger Dateien.
Die paar *.sig-Dateien sind ca. 1K groß und die *diff.gz werden auch nicht so ins Gewicht fallen bei einem Gesamtvolumen des Verzeichnisse /pub/gnu von ca. 14 GIGAByte.
Das Anliegen Traffic und Zeit zu sparen ist einfach nur lächerlich, weil es in keinem Verhältnis zueinander steht.
Du wirst aber schon wissen, warum du das Verzeichnis lokal vorrätig brauchst.
Jetzt zu einer Lösung:
RSYNC ist generell die richtige Wahl.
In deinem Fall reicht auch WGET mit folgendem Syntax:
wget -c -R *.diff.gz,*.diff.gz.sig,*.tar.gz.sig -r -nH --retr-symlinks ftp://ftp.gnu.org/pub/gnu/
Da du es nicht für nötig hältst, uns zu verraten unter welchen Betriebsystem das Ganze laufen soll, mußt du dir die WGET-Version selbst suchen.
cu paulepank
Hallo,
Unfug, auf einem FTP-Server muß ein rsyncd laufen. das wars.
Wenn du ein Beispiel brauchst wie man mit rsync Daten von einem FTP-Server holt siehe hier
Aber das ist Off-Topic für das Problem des Treaderstellers und ich werde mich dazu auch nicht weiter äußern.
cu paulepank
RSync kann soweit ich weiss nicht mit FTP umgehen. Zumindest hatte ich da schon vor
einiger Zeit mit einigen Leuten vom Unixboard dran rumgegrübelt, aber keinen Weg gefunden.
Habe ich gelesen und ? (will keine Antwort)einiger Zeit mit einigen Leuten vom Unixboard dran rumgegrübelt, aber keinen Weg gefunden.
RSync braucht als Endpunkt eine Shell und die bietet FTP nunmal nicht.
Unfug, auf einem FTP-Server muß ein rsyncd laufen. das wars.
Wenn du ein Beispiel brauchst wie man mit rsync Daten von einem FTP-Server holt siehe hier
Aber das ist Off-Topic für das Problem des Treaderstellers und ich werde mich dazu auch nicht weiter äußern.
cu paulepank