我在使用gnome-terminal上下来时遇到了一个问题。 让我们说我以前的命令是
vi pos_of_rightmost_setbit.cpp
gcc -o harsha pos_of_rightmost_setbit.cpp
此时按下向上箭头,我看到上一个上一个命令gcc -o harsha pos_of_rightmost_setbit.cpp
,这是完美的。
但是当我再次点击箭头时,我必须看到最后一个但前一个命令vi pos_of_rightmost_setbit.cpp
,而不是我看到gcc -o harvightmost_setbit.cpp
。
当我在这个时间点击输入时,命令vi pos_of_rightmost_setbit.cpp工作正常,所以我认为bashrc设置存在一些问题。
我附上截图以便更好地理解。
答案 0 :(得分:1)
那个提示字符串就是问题所在。
您需要用\[
和\]
包围该提示字符串的每个非打印位,以告诉readline不要在提示的长度内计算它们。
所以你应该有类似PS1="\[\e[1;39m\][\u@\h \W]\$ \[\e[m\]"
的东西。