PuTTY 换行功能已无法正常工作

PuTTY 换行功能已无法正常工作

我使用 PuTTY 通过 SSH 连接到我的 Linux 服务器。今天我注意到,当我输入超出屏幕右侧的长命令时,文本不会换行到下一行,而是从屏幕左侧的同一行开始,覆盖字符的顶部。我搞不清楚是什么原因导致了这种情况。有人能指点一下是什么原因导致的,以及如何解决?我在 PuTTY 中最初勾选了自动换行模式。

我没有对该服务器的 PuTTY 设置进行任何更改,因此不知道为什么它停止正常工作。

答案1

提交问题后,我仔细想了一下,在 Google 上进行了另一次搜索,结果基本解释了这个问题:

http://web.archive.org/web/20110102214648/http://drnathan.teamhackaday.com/2009/04/03/fix-your-linux-terminal-line-wrap-issues/

我喜欢的 PS1 字符串是:PS1='\e[0;32m[\u\e[m@\h \W]\$ '但这包含非打印字符(改变用户名颜色的 \e 部分)。我需要使用 转义这些非打印字符\[。以下方法解决了该问题:

PS1='[\[\e[0;32m\]\u\[\e[m\]@\h \W]\$ '

输出结果如下:

[username@hostname cwd]$

用户名是绿色。

我已编辑了 PS1 行,以便普通用户的用户名显示为绿色,但如果 su 到 root,root 将显示为红色(\e[0;31m如果您感兴趣的话)。我想因为我这样做了,所以我没有输入任何长命令...

相关内容