linux 终端命令行覆盖问题解决

󰃭 2017-01-22

问题

linux 下终端在配置显示头时会出现换行覆盖的问题, 如下:

原因

究其原因, 要知道终端配置是如何控制显示的。

终端配置里有一些控制标记字符, 控制显示什么颜色, 什么字符。

比如我的配置如下:

开始的 \e[36m] 标记的是最左侧的[的颜色, \e[35m 标记的是\u的颜色, 也就是用户名的颜色。等等。

而包裹这些控制符的是\[\]标记。

当出现我们最开始说的问题的时候, 一般都是\[\]标记没有成对出现,

所以我们仔细查找, 定位到了位置

控制 $显示的开始\[ 丢失了, 只有一个\]

解决

将丢失的\[补齐即可, 如下

验证

重新

source ~/.bashrc

看到

可以正确换行了