6 votes

sftp get -r sans écrasement

Je me connecte souvent à une base de données par le protocole sftp, et je récupère les données en faisant get -r

Existe-t-il une option pour ignorer tous les fichiers existants sur mon ordinateur ? J'ai essayé d'obtenir -r --overwrite mais cela ne fonctionne pas. (Je sais que je pourrais mettre mes fichiers en lecture seule mais j'aimerais trouver un meilleur moyen).

4voto

Dante Points 41

C'est en quelque sorte possible avec sftp. Utilisez 'get -a -r'. Selon la page de manuel de sftp pour ubuntu : http://manpages.ubuntu.com/manpages/artful/man1/sftp.1.html l'option -a tente de poursuivre les transferts interrompus et n'écrase un fichier que s'il y a des différences dans le fichier.

2voto

Jakuje Points 6207

Non, ce n'est pas possible. Page du manuel pour sftp ne mentionne aucune option qui permettrait de faire fonctionner ce système. Le mieux est de copier les fichiers dans un emplacement connu pour être vide, puis de les copier dans l'emplacement souhaité avec la commande suivante

get -r remote_path/ empty_path/
!cp --no-clobber empty_path/ real_target/

1voto

mgor Points 1151

Je suggère d'utiliser rsync en ssh :

rsync -avz -e ssh --progress user@server:/var/db ~/db

Quelques lectures complémentaires :

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X