Wie lade ich einen ganzen Ordner über FTP in Terminal herunter?
Wie lade ich einen ganzen Ordner über FTP in Terminal herunter?
Antworten:
mget
ist die nächstgelegene, die Sie mit der mitgelieferten FTP-Binärdatei erhalten können. Sie müssen mkdir und cd / lcd und dann alle Dateien abrufen, als ein Muster wie entsprechen*
Der prompt
Toggle kann sich als nützlich erweisen.
FTP funktioniert in einem Verzeichnis, nicht in Verzeichnissen als Container von Dateien. Wenn Sie den Job unbedingt erledigen mussten und FTP das einzige Tool war, das Sie verwenden konnten, konnten Sie ein expect
Skript zusammensetzen, um FTP für Sie zu betreiben.
Zum Glück gibt es Alternativen wie scp
| rsync
| wget
ganze Verzeichnisse im Wert von Dateien zu bekommen.
Eine andere Möglichkeit ist die Verwendung von Locken
curl ftp://ftp.com/mp3/* --user login:password -o /myfolder/*
Ich denke, das funktioniert, oder Datei für Datei
curl ftp://ftp.com/mp3/mymusic.zip --user login:password -o mymusic.zip
Ich hoffe das hat geholfen.
curl: (78) RETR response: 550
curl
absolut nicht damit umgehen können. wget
können.
Verwendung scp
(Dokumentation) oder sftp
(Dokumentation)
scp -r login@myserverip:/remote/directory/path/ mylocaldirectory
Ich musste über 22'000 Webcam-Bilder von meinem Webserver herunterladen, was sowohl für den Finder als auch für mein FTP-Programm CyberDuck eine Herausforderung darstellt.
Also habe ich folgendes gemacht (basierend auf @ bmikes Antwort):
mkdir ~/Desktop/image-dump-myserver
ftp ftp://myuser@myserver.com
# enter password
# You're now in the ftp console (where the world is still okay)
# Set the local folder
lcd ~/Desktop/image-dump-myserver
# cd into the desired folder (`ls`, `pwd` etc. all work here)
cd /httpdocs/images
# Toggle the interactive mode
prompt
# Download the desired files (all the images in my case)
mget *.jpg
Dann werden die Dateien in den gewünschten Ordner heruntergeladen:
local: image1433509292_1582.jpg remote: image1433509292_1582.jpg
229 Entering Extended Passive Mode (|||50001|)
150 Opening BINARY mode data connection for image1433509292_1582.jpg (63626 bytes)
100% |***********************************| 63626 1.51 MiB/s 00:00 ETA
226 Transfer complete
63626 bytes received in 00:00 (0.98 MiB/s)
local: image1427279963_0841.jpg remote: image1427279963_0841.jpg
229 Entering Extended Passive Mode (|||50053|)
150 Opening BINARY mode data connection for image1427279963_0841.jpg (67194 bytes)
100% |***********************************| 67194 1.64 MiB/s 00:00 ETA
226 Transfer complete
67194 bytes received in 00:00 (1.04 MiB/s)
local: image1439798493_1783.jpg remote: image1439798493_1783.jpg
229 Entering Extended Passive Mode (|||50357|)
150 Opening BINARY mode data connection for image1439798493_1783.jpg (48876 bytes)
100% |***********************************| 48876 1.80 MiB/s 00:00 ETA
226 Transfer complete
48876 bytes received in 00:00 (996.81 KiB/s)
....
Folge dieser Anleitung:
Art
ftp
dann siehst du in ftp aus wie
ftp>
dann öffnest du die IP des Servers
ftp> open xx.xxx.xxx.xx
Dann werden Sie nach dem Benutzernamen gefragt, den Sie angeben
Name:(your ftp server): your_username
dann wird nach dem Passwort gefragt
Password: your_password
dann sollten sie eingeloggt sein und die ftp> shell wieder sehen, sie können "ls" eingeben, um alle dateien aufzulisten und sie können wie in inix mit cd navigieren
Wenn Sie Ihren Dateinamen gefunden haben, können Sie ihn mit herunterladen
ftp> get filename
et voila, die Datei wird in das Verzeichnis heruntergeladen, aus dem Sie die Shell geöffnet haben
Sie können keine Verzeichnisse herunterladen, aber Sie könnten in Ihr Verzeichnis navigieren und mehrere Dateien herunterladen, z. B. alle
Aufgabe: Mehrere Dateien herunterladen
Sie müssen den Befehl mget wie folgt verwenden, um mehrere Dateien vom Remote-FTP-Server auf das lokale System zu kopieren. Möglicherweise werden Sie vor dem Übertragen der einzelnen Dateien zur Eingabe einer Ja / Nein-Antwort (J / N) aufgefordert (Sie können die Eingabeaufforderung deaktivieren, indem Sie die Option -i an den FTP-Client übergeben). Geben Sie zum Herunterladen aller Dateien Folgendes ein: ftp> mget *
Informationen von http://www.cyberciti.biz/faq/linux-unix-ftp-commands/ Prost
ich benutze
wget -r -l 10 --ftp-user='FTP_USER' --ftp-password='FTP_PASSWORD' \
ftp://ftp.server.com/folder_to_download/*
wget
Unterstützt leider keine parallelen Downloads.