我用自定义我的bash提示
PS1='e[0;36mu.h
e[0;31m $ux e[0;92m e[0;36m @* e[0;31mwne[0;92m$ '
输出工作正常,看起来很好
但是当我使用箭头键在历史中滚动时
滚动5-10次后,我无法移动到行的开头来修改
我找到的代码/命令和
我看到最后一个命令的一部分
我执行的命令:
$ps aux|grep ssh
滚动后,我看到
作为提示行中的一个示例
$ps aux并且我只能在auxTR之后开始写入
所以我按下ctrl+c以获取新的行/取消命令
我是否忘记了$后面的字符?
这是我的提示:
z4o.ubuntu
12:46 * /
$
当我复制/粘贴长命令时,我有同样的问题
您必须将不可见的序列放入[ ]
(或x01 x02
字节(中。请参阅Bash手册。
PS1='[e[0;36m]printable stuff[e[sequence]'
Bash不知道显示的字符占用了多少列。e[0;36m
打印7个字符,但不移动光标。你必须把这件事告诉Bash。