如何绕过屏幕/ byobu与zssh文件传输冲突(rz / sz)

时间:2012-10-21 18:37:42

标签: gnu-screen tty pty byobu

我一直在尝试zsshszrz,因为它似乎是一种快速/简单的来回发送文件的方式(本地< - >远程) )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会话......

1 个答案:

答案 0 :(得分: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 + 空格到本地zssh提示
  5. sz <filename>发送文件
  6. byobu -R恢复上一个会话
  7. 只需将步骤3和5交换为从远程发送文件到本地!

相关问题