我正在测试在本地 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 是终端的宽度和高度)