如何从在远程ssh连接上运行的tmux(复制模式)复制到本地剪贴板

Lee*_*ren 5 linux macos ssh tmux

我通过OS X上的VirtualBox运行linux。我是通过在无头状态下运行VM,然后使用端口转发将其切入Linux计算机来实现的。现在,无论将什么复制到虚拟机上的剪贴板中,我都可以粘贴到远程ssh会话中,反之亦然(从tmux复制模式复制)。我尝试使用以下tmux配置:

setw -g mode-keys vi
bind-key -t vi-copy v begin-selection
bind-key -t vi-copy y copy-pipe "tmux save-buffer - | ssh host pbcopy"
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不起作用...使用鼠标手动复制可以工作,但是tmux复制模式更方便。有任何想法吗?

Ram*_*Ram 4

这需要将 tmux 缓冲区与 OSX 剪贴板集成。您想要做的ssh host pbcopy就是这样,但我认为您的设置不正确。

host这里应该是你本地的 OSX 机器。并且您应该在 OSX 用户名和运行 tmux 的远程用户之间建立基于无密码密钥的信任。

步骤 1.在 OSX 上启用 SSH 转到System preferences -> Sharing并启用Remote Login. 还要从列表中删除管理员并添加您的用户名。

步骤 2.设置无密码登录。
这些是步骤

步骤 3.将您的 IP 地址替换host192.x.x.x可从 Virtualbox 访问的 OSX 的 IP 地址