在 Windows 上使用 FreeSSHd 和 cygwin bash/sh shell 在 OSX 上的 SSH 会话中输出不正确

在 Windows 上使用 FreeSSHd 和 cygwin bash/sh shell 在 OSX 上的 SSH 会话中输出不正确

我正在测试在本地 Windows VM 上运行 SSH 服务器。

我已经安装了 FreeSSHd,并将命令 shell 设置为“c:\cygwin\bin\sh --login -i”(bash 也是如此),并且未选中“使用新控制台引擎”。(启用后,无论如何都不会通过 ssh 连接显示任何输出)

该 shell 似乎可以工作,但是当使用 ssh 从我的 OS-X 终端连接时,所有 shell 结果都格式不正确。

      $ ls -al
          total 17
                  drwxr-xr-x+ 1 SYSTEM        Administrators 4096 Feb  2 01:00 .
drwxrwxrwt+ 1 Administrator Administrators    0 Feb  2 01:01 ..
                                                               -rw-------  1 SYSTEM        Administrators  128 Feb  2 01:30 .bash_history
                                                         -rwxr-xr-x  1 SYSTEM        Administrators 1150 Feb  2 00:55 .bash_profile
                                                   -rwxr-xr-x  1 SYSTEM        Administrators 3754 Feb  2 00:55 .bashrc
                                       -rwxr-xr-x  1 SYSTEM        Administrators 1461 Feb  2 00:55 .inputrc

对于为什么会发生这种情况,我该如何解决这个问题,您有什么想法吗?

答案1

听起来好像两端没有正确传递终端参数。

以下是一些可以尝试的方法。将终端窗口设置为 80x24。这是终端窗口的历史标准 (TN3270) 大小。和/或重置对远程终端大小的期望。有多种方法可以实现这一点,例如eval $(resize)stty cols X; stty rows Y(其中 X 和 Y 是终端的宽度和高度)

相关内容