我已经阅读了 TRAMP 手册和网络上的许多论坛,但找不到这个问题的答案。我正在尝试在 org-mode 中设置一个链接,将文件从远程服务器传输到我的本地机器(反之亦然)。
根据手册,我必须写类似的东西
/scp:user@host:filepathonremotemachine
就是这样。没有指定文件应该移动到哪里,这很奇怪。
我试过这样做,它只是打开了文件(就像我在使用 ssh 一样);也尝试了其他组合,但没有任何运气。
我尝试使用 tramp 而不是 shell:command
链接来执行此操作有一个特定的原因。非常欢迎任何帮助
更新
显然 TRAMP 没有它 promise 的那么有用。这给我留下了 shell:command
链接选项。然后问题围绕避免弹出的openssh窗口展开。我找到的最接近的解决方案是 here,它会继续设置 ssh-agent。我对这个过程不是很熟悉,我更愿意使用 authinfo.gpg 身份验证方法。我有这个选项吗?谢谢。
最佳答案
Tramp 本身仅提供 native Emeacs 函数的替代实现。从这个意义上说,它是愚蠢的,就像每个图书馆一样,因为它不知道调用者想要什么。
我不是 org-mode 专家,但你能展示一下你想要哪种链接吗? 没有任何远程性,只是一个在本地复制文件的链接。届时用远程文件名替换本地文件名将很容易。
我假设,您需要诸如外部链接之类的东西来评估 Lisp 代码。喜欢
elisp:(copy-file "/path/src" "/path/target")
关于emacs - 如何使用 scp 或 rsync 使用 Tramp 传输文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48976079/