0

我一直在尝试zssh,因为它似乎是一种快速/简单szrz方式来来回发送文件(本地 <-> 远程) over ssh。问题是我在远程服务器上使用byobu(基本上screen),这与文件的发送和接收有某种冲突。

http://zssh.sourceforge.net/FAQ

第 6 条指出:

Beware that any program interferring (ie non transparent) with the tty/pty
chain will likely prevent file tranfers from working.

For example, running 'screen' on the REMOTE side will prevent zssh from
working properly because it will be messing things between rz and sz.

这真是太糟糕了,因为运行byobu是我的远程管理工具包的重要组成部分,而且我还没有找到任何看起来像zssh.

任何人都可以想出一种zssh无需禁用即可开始工作的方法byobu/screen吗?我会自己解决问题,但是这种事情让我头疼(因为,我不知道为什么screen会与这样的文件传输过程发生冲突,所以解释会非常有帮助)。

此外,该问题的任何替代解决方案将不胜感激。

编辑: 想知道是否有办法快速退出byobu,执行zssh任务然后跳回上一个byobu会话......

4

1 回答 1

0

繁荣。知道了:

在当地,zssh me@remote.com -p <your port>

在远程上byobu,您需要Shift+F6以暂时分离会话(不用担心,我们会在此传输后将其取回)。

现在我们在远程服务器上的一个普通的旧 shell 中,让我们从本地机器发送一个文件到远程机器。在遥控器上,输入:rz准备在此目录中接收 ( pwd)。

现在,点击Ctrl+Space来显示zssh提示符(这个提示符现在基本上是在使用本地机器的终端)。找到您想要的文件(例如BillLumberg.gif)并输入:

sz BillLumberg.gif

该文件将自动将自身发送到远程计算机并带您返回远程提示。

现在文件已上传,让我们跳回您之前的byobu会话。

byobu -list将向您显示所有现有byobu会话:

There is a screen on:
    8515.byobu  (10/21/2012 12:36:23 PM)    (Detached)

要恢复特定会话,请输入:byobu -r 8515然后瞧。您实际上需要做的就是byobu -R恢复以前使用的会话。

TLDR:

  1. zssh me@remote.com -p <port>
  2. Shift+F6分离电流byobu
  3. rz进入接收模式(仅远程 -> 本地需要此步骤)
  4. Ctrl+Space到本地zssh提示
  5. sz <filename>发送文件
  6. byobu -R恢复上一个会话

只需交换步骤 3 和 5 即可将文件从远程发送到本地!

于 2012-10-21T20:24:38.713 回答