键入时终端不返回

键入时终端不返回

我知道这很奇怪,但出乎意料的是,今天我将一个长命令复制到终端中,它没有像预期的那样自动换行,而是开始覆盖同一行。命令执行得很好,但变得不可读。通常当发生这种情况时,您只需按几次 Enter 即可修复,但在这种情况下不行。我重新启动了终端,甚至重新启动了,但情况还是一样。

我可能认为这与我编辑了 /etc/bash.bashrc 文件以自定义提示颜色等有关。但我几天前就这样做了,编辑后并没有发生这种情况。我保存了一个备份以防万一,如果有人认为可能是这样,我已经包含了两个文件的差异输出:

$ diff /etc/bash.bashrc /etc/bash.bashrc.bak 
19c19
< PS1='\e[1;32m\u: \e[m\w\n\e[1;33m\$\e[m '
---
> PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

任何想法都是有帮助的,这是一个非常奇怪的问题。

答案1

尝试使用这个PS1

PS1='\[\e[1;32m\]\u: \[\e[m\]\w\n\[\e[1;33m\]\$\[\e[m\] '

不同之处在于转义序列(\e..)被包裹在中\[ .. \],这有助于 Bash 更好地跟踪光标。

相关内容