PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie per ftp ganze Verzeichnisse abholen???



mspock
07.06.06, 16:06
Moin Community...

Wahrscheinlich ist mein Problem eher ein Denkfehler als ein technischer, aber ich hoffe ihr könnt mir trotzdem helfen.

Ich habe ein kleines Script, das sich per ftp auf einem Server einloggt. Alles was sich in diesem Verzeichins befindet (Ordner + Dateien) möchte ich nun zur Sicherung auf meinen PC runterladen.
Das Script verbindet sich auch ohne Probleme und öffnet sogar das entsprechende Verzeichnis. Nur wie kann ich jetzt alles in diesem Verzeichnis runterladen??? Einzelne Dateien habe ich mit get geholt, aber ich will ja nicht jeden Dateinamen einzeln einfügen und die Ordner bekomme ich so ja auch nicht, oder? Zumal sich die Ordner auch ändern und ich dann das Script jedesmal wieder anpassen müsste...

Hoffe ihr könnte mir helfen. In der Suche habe ich nichts gefunden, oder hatte einfach nur Tomaten auf den Augen :D

Torsten

drcux
07.06.06, 16:12
mget

10zeichen

kreol
07.06.06, 18:30
Wenn der Server es unterstützt geht auch
wget -r user@host:/verzeichnis/*


Kreol

marce
08.06.06, 08:17
curl ist in der Richtung ein wenig mächtiger als wget - jedenfalls aus meiner Erfahrung heraus...

mspock
08.06.06, 08:53
Vielen Dank für die Tipps und ich bin auch schon ein Stückchen weiter gekommen. Ich habe mich für mget entschieden und habe als Platzhalter ein * benutzt. Dadurch sieht mein Script wie folgt aus:


#!/bin/bash
ftp -i -p -v <<EOCMDS
open xxx.xxx.xxx.xxx
ascii
lcd /backup
cd /galileo/user2
mget *
quit
EOCMDS

Die .netrc Datei arbeitet problemlos. Allerdings wenn ih das Script ausführe, bekomme ich folgende Meldung:


Connected to xxx.xxx.xxx.xxx.
220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 1 of 50 allowed.
220-Local time is now 08:45. Server port: 21.
220-This is a private system - No anonymous login
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity.
331 User user OK. Password required
230-User user has group access to: user
230 OK. Current directory is /home/user
Remote system type is UNIX.
Using binary mode to transfer files.
200 TYPE is now ASCII
Local directory now /backup
250 OK. Current directory is /galileo/user2
local: test remote: test
227 Entering Passive Mode (xxx,xxx,xxx,xxx,xxx,146)
550 test: No such file or directory
221-Goodbye. You uploaded 0 and downloaded 0 kbytes.
221 Logout.


Einzelne Dateien die im Order /galileo/user2 liegen kann ich ohne Probleme per ftp holen. Nur sobald ich ein weiteres Verzeichnis habe, das in diesem Ordner liegt und das ich holen möchte bricht er mit der Fehlermeldung ab.

Hat jemand einen kleinen Tipp, wo mein Denkfehler liegt? Oder geht das so wie ich es mir vorgestellt habe gar nicht?
Wenn ich mit FileZilla auf dem Server verbinde, kann ich die Ordner und Verzeichnisse ohne Probleme sichern, nur so als kleine Sache am Schluß...

marce
08.06.06, 09:12
mget kann (je nach Client) keine Verzeichnisse holen.

curl ist in dem Fall die bessere Alternative...

mspock
08.06.06, 11:32
Habe gerade einen Artikel zu rsync gelesen. Damit sollte es ja eigentlich auch funktionieren, wobei culr werde ich auf jedenfall mal testen.

Ein fettes Danke!