54 votes

Comment puis-je télécharger un dossier entier contenant d'autres dossiers en utilisant sftp sous Linux ?

J'ai essayé put -r directory/* , qui n'a téléchargé que les fichiers et non les dossiers. M'a donné l'erreur, ne peut pas Couldn't canonicalise .

Toute aide serait grandement appréciée.

230voto

Ben Thielker Points 329

F

put -r local/path/to/directoryName

T

mkdir directoryName

32voto

Eugene S Points 760

Aquí vous trouverez des explications détaillées sur la manière de copier un répertoire à l'aide de la fonction scp . Dans votre cas, ce serait quelque chose comme :

$ scp -r foo your_username@remotehost.edu:/some/remote/directory/bar

Cette opération permet de copier le répertoire "foo" de l'hôte local vers le répertoire "bar" d'un hôte distant. Ici, il s'agit de -r est -copier récursivement des répertoires entiers.

Vous pouvez également utiliser rcp avec une syntaxe similaire. La seule différence entre eux est que scp utilise un shell sécurisé et rcp utilise l'interprète de commandes à distance.

BTW L'erreur "Couldn't canonicalise" que vous avez mentionnée apparaît lorsque le serveur sftp n'est pas en mesure d'accéder au fichier/répertoire mentionné dans la commande.

MISE À JOUR : Pour les utilisateurs qui souhaitent utiliser put en particulier, veuillez vous référer à la réponse de Ben Thielker ici.

5voto

sftp> mkdir source
sftp> put -r source
 Uploading source/ to /home/myself/source
 Entering source/
 source/file1
 source/file2

enter image description here

0voto

Byron Points 9

I

yum install ncftp

T

ncftpput -R -v -u username -P 21 ftp.server.dev /remote-path/ /localdirectory

-11voto

IneQuation Points 528

Utilisez plutôt scp Il utilise également SSH et peut facilement gérer la récursivité.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X