Téléchargement de tous les fichiers depuis un serveur FTP [fermé]

J'ai besoin de tout télécharger d'un serveur FTP à l'hébergement sur un serveur différent. J'ai un accès shell uniquement au serveur sur lequel je télécharge les fichiers. Comment, en utilisant la commande FTP Linux, puis-je télécharger chaque fichier, en créant les répertoires nécessaires pour eux dans le processus?

28
demandé sur Navarr 2010-06-09 08:46:26

3 réponses

Utilisez wget de cette manière (m pour la mise en miroir):

wget -m ftp://username:password@ip.of.old.host

Si votre nom d'utilisateur ou votre mot de passe contient des caractères spéciaux, vous devrez peut-être utiliser le format:

wget -m --user=username --password=password ftp://ip.of.old.host

Sinon, j'ai trouvé ce guide, qui vous montre comment le faire en utilisant ncftp dans Debian. Vous aurez besoin d'un accès root au nouveau serveur si ncftp n'est pas déjà installé.

En bref:

sudo apt-get install ncftp
ncftpget –T –R –v –u "ftpuser" ftp.nixcraft.net /home/vivek/backup /www-data
56
répondu Emil Vikström 2015-07-11 00:23:19

Certains serveurs FTP permettent de télécharger des répertoires entiers en suffixant leur nom avec .tar ou .tgz. Le serveur crée alors une archive de ce répertoire.

1
répondu mouviciel 2010-06-09 04:54:06

Une Autre façon est d'utiliser ftp. Voici un exemple de script shell utilisant ftp:

#! /bin/bash

ftp -n << 'EOF'
open ftp.your_ftp_host.com
quote USER your_username_here
quote PASS your_password_here
cd gets
prompt no
mget * .
bye
EOF
1
répondu mgoldwasser 2016-06-10 11:34:25