我有一个首选的bash提示布局,并试图将它应用于2个不同的系统工作。但是,在两种环境下它都不会执行相同的操作。PS1提示bash版本之间的差异3.2.25 v 4.1.2
如问题中所列,一个运行3.2.25,另一个运行4.1.2。 您可能已经猜测它在具有更高版本的bash的机器上可以正常工作。
我的问题是我看不到我所介绍的,这两个版本都无法理解。
相关线路从.bashrc中如下:
# Colours
RED='\[\e[1;31m\]'
GREEN='\[\e[1;32m\]'
YELLOW='\[\e[1;33m\]'
BLUE='\[\e[1;34m\]'
CYAN='\[\e[1;36m\]'
NORM='\[\e[m\]'
# PS1 pieces
DATE='[\D{%d-%m-%Y} \t]'
LPATH='[\w]'
DB_USER='[genomst]'
DB_COL=BLUE
WHERE='[\[email protected]\h]'
PS1="$YELLOW$DATE$GREEN$LPATH$NORM\n${!DB_COL}$DB_USER$NORM$WHERE\$ "
当我试图寻找以前的命令我都用过,按Ctrl + R键进行搜索的异常行为我正在发生。
在4.1.2版本,当然一切的行为,但在3.2.25版本,返回的提示表明我的光标闪烁在中间:
步骤重复是:
1. login as user and receive the following prompt:
[28-09-2017 17:36:20][~]
[genomst][[email protected]]$
2. Press ctrl+r and search for vim
[28-09-2017 17:36:20][~]
(reverse-i-search)`vim': vim .bashrc
3. Press left arrow key (could be any but this shows just how far I have moved back)
[28-09-2017 17:36:20][~]
[genomst][[email protected]]$ vim .bashrc
^
^表示游标所在我的屏幕上
有人能在这个问题上流下将感激任何光线
请让我知道我f需要进一步的细节?
让它'PS1 =“$ YELLOW $ DATE $ GREEN $ LPATH $ NORM \ n $ $ DB_USER $ NORM $ WHERE \ $ $ NORM“'(注意'$ NORM'在最后将转义序列重置为正常。)我发现使用转义序列本身比较容易,例如'export PS1 ='\ [\ e [0; 37m \] \ D {%R} \ [\ e [1; 34m \] \ h:\ w> \ [\ e [0m \]“' –
@DavidC .Rankin - 即使使用直接转义序列,结果也是一样的 - PS1 ='\ [\ e [1; 33m \] [\ D {%d-%m-%Y} \ t] \ [\ e [1; 32m \] [\ w] \ n \ [\ e [1; 34m \] nonex \ [\ e [m \] [\ u @ \ h] \ $'---请参阅下面的注释,问题 – grail
您是否尝试删除所有颜色代码并检查行为?就像:'PS1 =“$ DATE $ LPATH \ n $ {!DB_COL} $ DB_USER $ WHERE \ $”' –