如何使用 dired/tramp 将文件从远程服务器复制到 emacs 中的本地文件夹?

lab*_*nth 9 emacs tramp

当我使用tramp 打开远程目录(比如Cx Cf /ssh:user@example:/somedirectory)时,它会为该远程目录打开一个dired 缓冲区。问题是我想将目录和/或文件从远程服务器复制到我的本地机器。我尝试了一些语法,例如标记所有目录或文件、按“C”并指定 local:/somelocaldir 或仅指定 /somelocaldir,但充其量这些文件被复制到远程服务器上某处的文件中。

有没有办法将文件从远程(tramp)dired 缓冲区复制到本地目录?我只使用了 6 个月的 emacs,所以如果有一种更好的完全不同的方法并且仍然让我使用 emacs(最好是 w/dired),那就太好了。

澄清一下,我对查看、编辑、列出等远程文件不感兴趣。我只想将文件从远程服务器复制到我的本地机器,与使用 scp 或 scp -r 获得的效果相同。我只是希望我可以做到这一点,而不必退出 emacs 甚至使用 eshell(但我可能只会这样做,直到我在这里得到答案)。

eph*_*ith 8

这是一种方法。这在 emacs 23 上对我有用。

在直接模式下,导航到您要复制的文件。

  1. M标记文件。
  2. 做一个M-x dired-do-copy,你会被提示在迷你缓冲区中的一个位置。
  3. 将位置编辑为您要复制到的本地位置,然后按 Enter。

完毕。