Lorsque j'utilise tramp pour ouvrir un répertoire distant (disons Cx Cf / ssh: user @ example: / somedirectory), il ouvre un tampon dired pour ce répertoire distant. Le problème est que je veux copier des répertoires et / ou des fichiers du serveur distant sur ma machine locale. J'ai essayé quelques syntaxes comme marquer tous les répertoires ou fichiers, appuyer sur 'C' et spécifier local: / somelocaldir ou juste / somelocaldir, mais au mieux les fichiers sont copiés sur un fichier quelque part sur le serveur distant.
Existe-t-il un moyen de copier des fichiers d'un tampon distant (clochard) vers un répertoire local? Je n'utilise emacs que depuis 6 mois, donc s'il y a une approche complètement différente qui est meilleure et me permet toujours d'utiliser emacs (de préférence avec dired), ce serait génial.
Juste pour clarifier, je ne suis pas intéressé par la visualisation, l'édition, la liste, etc. des fichiers distants. Je veux juste copier des fichiers d'un serveur distant sur ma machine locale, avec le même effet que vous obtiendriez si vous aviez utilisé scp ou scp -r. J'espère juste pouvoir le faire sans devoir abandonner emacs ou même utiliser l'eshell (mais je vais probablement le faire jusqu'à ce que j'obtienne une réponse ici).
C-x C-f /user@somehost:/somedir
suffit carscp
c'est la méthode d'échange par défaut. Essayez-le et voyez. Vous pouvez peut-être enregistrer quelques bosses clés.dired
. J'utiliseansi-term
pour des commandes comme ça si je ne veux pas quitter emacs. Emacs a été conçu pour la personnalisation. Je suis sûr que vous obtiendrez une réponse avec un extrait de lisp à un moment donné.Réponses:
Voici une façon. Cela fonctionne pour moi sur emacs 23.
En mode Dired, accédez au fichier que vous souhaitez copier.
M-x dired-do-copy
et vous serez invité à indiquer un emplacement dans le mini-tampon.Terminé.
la source