ANSI 提示在 Ubuntu 10.04 终端窗口 (Unicode 0002) 中很混乱,但在 Putty 中却没问题

ANSI 提示在 Ubuntu 10.04 终端窗口 (Unicode 0002) 中很混乱,但在 Putty 中却没问题

我的 bash 提示符是:

PS1='\e[1;31m\]\[\u\e[0m\]@\h [\e[1;33m\]\w\[\e[0m\]]\$ '

(红色用户名,黄色当前目录)。

如果我从 Windows 机器连接 Putty,一切都很好。如果我从 Ubuntu Desktop(全新安装的 10.04 TLS)中打开终端窗口,用户名的第一个字符和路径的第一个字符将被替换为 Unicode +0002(下面用 ASCII 文本绘制了一个方框)。

 __
|00|
|02|
 __

Ubuntu 终端中的字符编码是 UTF-8。Putty 的翻译设置也是 UTF-8,其作用相同。

如有任何错误提示,我们将不胜感激。

谢谢。

答案1

看起来有几个括号和反斜杠的位置不对。试试这个:

PS1='\[\e[1;31m\][\u\[\e[0m\]@\h \[\e[1;33m\]\w\[\e[0m\]]\$ '

相关内容