服务器Bash行缠绕在文本和错误的地方

这是一个很难解释的问题,当使用bash shell连接到我的一台服务器时,在任何用户的线下都是坏的,并且有各种各样的问题。 一次我详细的截图如下: 在这里输入图像说明

第2部分

第三部分

第四部分

我遇到的其他问题包括nano对于我所在的行和/或字母非常困惑,如同在nano中键入相同的消息所示:

纳米是破碎的

这些问题只发生在我之前提到的运行CentOs的服务器之一时。 你知道这是为什么发生,我能做些什么来解决它? 在其他服务器上的消息工作正常!

其他服务器工作

谢谢你的时间,


请求命令的输出:

服务器无法正常工作: 不工作服务器

工作服务器:

服务器工作


它可能是非工作服务器上的自定义提示? 在.bashrc中

PS1='\e[1;32m\u@\h\e[m:\e[1;34m\w\e[m$ ' 

评论这似乎解决了这个问题。

谷歌说,如果你不符合这些规则,就可能发生换行错误

 use the \[ escape to begin a sequence of non-printing characters, and the \] escape to signal the end of such a sequence 

我不确定这会适合我的提示吗?

自定义提示是问题(从您的意见)。

 PS1='\e[1;32m\u@\h\e[m:\e[1;34m\w\e[m$ ' 

它要么发送你的terminal不理解的控制序列,要么没有形成。

你可以试试这个,

 PS1='\[\e[1;32m\]\u@\h\[\e[m\]:\[\e[1;34m\]\w\[\e[m\]$ ' 

这几乎可以肯定你的terminal仿真器和运行系统在terminal能力上的差异。 如果像你说的那样,它只发生在某些机器上(或者只是通过SSH),比较工作和非工作系统之间的TERM环境variables的值,并试图在不工作的系统上适当地设置TERM

这可能不起作用,这取决于系统上不工作的terminfo数据库的大小。 您可能需要升级该系统,或者至lessfind另一个适用于您的TERM值,而且远程系统知道。

我面临同样的问题。 我进入terminal的Lion(最新的OSX 10.7.3)的“首选项”,然后进入:

设置 – >高级 – >“声明terminal为”

并select了“xterm”而不是原来的V100。

问题解决了。

(这是因为我喜欢我的自定义提示等。)