在带有流浪汉的远程机器上运行命令?
Posted
技术标签:
【中文标题】在带有流浪汉的远程机器上运行命令?【英文标题】:running command on remote machine with tramp? 【发布时间】:2013-02-03 19:12:46 【问题描述】:我在远程机器上打开了一个文件,输入了C-u M-!
,然后输入了tree
命令。它显示在缓冲区中:
/bin/sh: tree: command not found
tree
命令安装到/home/RNAer/bin
中,我验证用bash终端登录时可以成功运行。
然后我像下面这样在.emacs
中添加路径并重启emacs,
(add-to-list 'tramp-remote-path "/home/RNAer/bin")
但它仍然有找不到命令的相同错误。有什么问题?
【问题讨论】:
你在远程机器上哪里添加了/home/RNAer/bin
到$PATH
?换句话说,这个目录是否也在 non-interactive shell 会话中添加到 $PATH
中?
它被添加到交互式shell中的~/.bashrc
(由~/.bash_profile
提供)。但我测试了它——即使我在非交互式 shell 会话中添加到 $PATH,它仍然失败。
您是否删除了您的持久性文件? (默认持久化文件为~/.emacs.d/tramp
)
【参考方案1】:
我遇到了同样的问题,我通过在 .emacs 中添加以下行解决了
(require 'tramp)
(add-to-list 'tramp-remote-path "/home/RNAer/bin")
请注意,如果没有第一行,则第二行会引发错误。您可以通过
仔细检查您的tramp-remote-path(message (format "%s" tramp-remote-path))
看看你的路径是否设置正确。
【讨论】:
以上是关于在带有流浪汉的远程机器上运行命令?的主要内容,如果未能解决你的问题,请参考以下文章
当我通过 Git Bash 中的 ssh 在远程 Linux 机器上运行命令时,如何将文件的内容直接复制到我的 Windows 剪贴板中?