我使用以下命令修改了.bashrc
文件中的提示:
PS1='\[$(tput bold)\e[1;34m\w\e[m$ '
现在我的提示以粗体蓝色显示当前目录,后跟$
符号。在新提示,如果没有输入其他文字,我按删除键没有任何反复发生。
但是,如果我输入任何文字,例如cd
,请删除该文字,然后再次按删除键,它将删除我的提示。如何更改.bashrc
文件,以便永远不会删除我的提示?
答案 0 :(得分:1)
Bash对你的提示实际存在多长时间感到困惑。您可以通过用反斜杠括号括起提示的不可打印部分来告诉bash:\ [.... \]。 然而,你的提示只包含左括号,让bash认为提示很短,所以在某些情况下它很乐意删除几乎所有的提示。正确使用包围将如下所示:
PS1='\[$(tput bold)\e[1;34m\]\w\[\e[m\]$ '
也就是说,除了工作目录和美元符号之外,所有内容都是反斜杠括号,因为这些是实际占用终端屏幕空间的唯一部分。