Bash PS1提示中长行重叠

时间:2013-06-25 19:55:39

标签: bash unix ps1

我已配置 PS1 bash提示。

我的~/.bashrc文件:

if [[ $EUID -ne 0 ]]; then
        PS1='\n\e[0;33m☛ \W\e[0m \n\e[1;35m⤷\e[0m '
fi

问题是新线与前一线重叠。 知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:5)

在bash提示中使用非打印字符时,必须使用\[...\]将非打印序列(例如颜色代码)指定为非打印:

PS1='\n\[\e[0;33m\]☛ \W\[\e[0m\] \n\[\e[1;35m\]⤷\[\e[0m\] '