边界服务器故障问题,但我正在编程一些shell脚本,所以我先在这里尝试:)

大多数*nixes都有一个命令,可以让您将输出管道/重定向到本地剪贴板/粘贴板,并从中检索。在OS X上,这些命令是

pbcopy, pbpaste 

当SSHed到另一个服务器时,是否有办法复制此功能?也就是说,

我用的是电脑A。 我打开一个终端窗口 我SSH到计算机B 我在计算机B上运行一个命令 计算机B的输出被重定向或自动复制到计算机A的剪贴板。

是的,我知道我可以(战栗)用鼠标从命令中选择文本,但我已经习惯了直接将输出输出到剪贴板的工作流程,所以我希望远程会话也能这样。

代码很有用,但通用方法也很有用。


当前回答

如果你在Kubernetes集群中的pod上工作,而不是直接使用SSH,所以你没有办法进行文件传输,你可以使用cat,然后将终端输出保存为文本。例如,在macOS中,您可以执行Shell ->导出为文本。

其他回答

这是我基于SSH反向隧道、netcat和xclip的解决方案。

首先创建脚本(例如:Clipboard-daemon.sh)

#!/bin/bash
HOST=127.0.0.1
PORT=3333

NUM=`netstat -tlpn 2>/dev/null | grep -c " ${HOST}:${PORT} "`
if [ $NUM -gt 0 ]; then
    exit
fi

while [ true ]; do
    nc -l ${HOST} ${PORT} | xclip -selection clipboard
done

然后在后台启动。

./clipboard-daemon.sh&

在接收到部分数据后,将开始数控管道输出到xclip和重生过程

然后启动ssh连接到远程主机:

ssh user@host -R127.0.0.1:3333:127.0.0.1:3333

当登录在远程框上时,尝试这样做:

echo "this is test" >/dev/tcp/127.0.0.1/3333

然后在您的工作站上尝试粘贴

当然,您可以编写包装器脚本,首先启动clipboard-daemon.sh,然后启动ssh会话。这就是我的工作方式。享受。

如果你在Kubernetes集群中的pod上工作,而不是直接使用SSH,所以你没有办法进行文件传输,你可以使用cat,然后将终端输出保存为文本。例如,在macOS中,您可以执行Shell ->导出为文本。

发现了一个很好的解决方案,不需要反向ssh连接!

您可以在远程主机上使用xclip,同时在OSX系统上使用ssh X11转发和XQuartz。

设置方法:

安装XQuartz(我用solist + pivotal_workstation:: XQuartz recipe做了这个,但你不必这样做) 运行XQuartz.app 打开XQuartz首选项(+,) 确保选中“启用同步”和“当剪贴板发生变化时更新剪贴板” ssh -X remote-host "echo 'hello from remote-host' | xclip -select剪贴板"

对于任何通过谷歌搜索到这个的人来说: 在这个时代,最好的解决方案似乎是柠檬水

在剪贴板工具的neovim帮助文本中也提到了各种解决方案

远程管理器Linux端口支持在本地和远程主机之间同步剪贴板。您只需打开本地far2l,在里面执行“ssh somehost”,在ssh会话中运行远程far2l,并使用本地剪贴板获得远程far2l。

它支持Linux, *BSD和OS X;我做了一个特殊的putty构建来利用这个功能从窗口也。