Windows 控制台中的 SSH:有时会对某些字符进行错误解释

Windows 控制台中的 SSH:有时会对某些字符进行错误解释

我使用 MinGW 项目中的 ssh.exe 从 Windows 本机命令行访问 Linux 服务器。或者我使用 Console2,它是 cmd.exe 的包装器,这使它更加可用,但它在后台仍然是 cmd.exe。

总体来说,它运行良好,但有时在解释某些字符(主要是 CR 和 LF 以及其他空格)时会出现严重问题,从而导致出现奇怪的图形伪影。当我使用 Backspace 删除字符时也是如此。

下图显示了几乎正确显示的会话。只有命令提示符显示了一些剩余的字符(实际上,它应该显示一个空的命令行)。

注意命令提示符与上一个屏幕中的工件

在最后一张图片中,你可以看到当我粘贴此文本时 Vim 的样子:

    /brake /cmd_vel /currents /diagnostics /diagnostics_agg /diagnostics_toplevel_state
    /enable /filtered_joint_states /fix /fix_extended
    /flipper_cmd /flippers_cmd /flippers_state /icp_odom /imu/data /imu_odom /visual_odom
    /initialpose /joint_states /laser_center /local_joy/cmd_vel /local_joy/joy
    /magnetic /mechanization_output_inso /mechanization_output_inso_aiddebug
    /mux_cmd_vel/selected /nav/cmd_vel /nifti_robot_node/max_angular_speed /nifti_robot_node/max_linear_speed
    /odom /pointcloud_control /poseupdate /posture /posture_cmd /private/nav/cmd_vel
    /restart3d /robot_status /rosout /rosout_agg /scan /scanning_once /scanning_speed_cmd
    /set_flippers_torque /steering_efficiency
    /syscommand /teleop_joy/cmd_vel /teleop_ocu/cmd_vel /temperature /tf /tf_static /tracks_vel /tracks_vel_cmd /velocity

粘贴几行文本后,Vim 的简单实例

当我(盲目地):wq打开文件并重新加载时,文本显然已保存,然后也正确显示。因此,这只是 Windows 端的可视化问题;Linux 端接收到了正确的输入。

当我发出clear命令时,窗口总是会被正确清除。

我该怎么做才能消除这种不兼容性?是否有一些隐藏的 Windows 控制台设置可以让我获得更好的兼容性?

(我知道 Putty 可以很好地处理这个问题,但我想在我的本机命令行中使用 ssh)

相关内容