如何退格或删除?

在Windows 10中,当我启动MS PowerShell通过Windows上的Kitematic中的容器ssh时,我注意到我不能退格或删除,而是使用^ H作为退格符而不是实际删除以前的字符。

我想念什么?

当通过ssh连接时,临时解决方法是将tty erase命令设置为任何您的退格键在terminal中发送的内容。

 stty erase ^H 

上面的^H序列不是文本文本,而是按ctrlv然后退格键进入的控制字符。

您可以将此命令添加到docker虚拟机上的.bashrc文件,以便每次连接时自动设置它。 在terminal中编辑文件时,必须使用与上述相同的转义序列inputstring。

.bashrc执行此操作将设置对虚拟机的所有login进行erase ,这样可能会对连接其他terminaltypes的擦除工作产生负面影响。

您通常会在客户端而不是服务器上解决这个问题。 例如,PuTTY对此具有特定的设置 。 我不知道为什么你的PowerShell / ssh组合没有正确的擦除映射,因为Docker通常是开箱即用的。 检查Docker快捷方式在启动docker / sshterminal时的function,并在启动terminal进行手动连接时执行相同的操作。

接受的答案的作品,但我想我会指出,如果你启动bash而不是留在sh,那么这一切工作,所以只需在#提示符下键入bash,你会得到你需要的function。

Interesting Posts