PS1 bash命令替换10
问题描述:
这是我的脚本,设置了我的bash的PS1PS1 bash命令替换10
# Reset
Color_Off="\[\033[0m\]" # Text Reset
# Regular Colors
Black="\[\033[0;30m\]" # Black
Red="\[\033[0;31m\]" # Red
Green="\[\033[0;32m\]" # Green
Yellow="\[\033[0;33m\]" # Yellow
Blue="\[\033[0;34m\]" # Blue
Purple="\[\033[0;35m\]" # Purple
Cyan="\[\033[0;36m\]" # Cyan
White="\[\033[0;37m\]" # White
# Bold
BBlack="\[\033[1;30m\]" # Black
BRed="\[\033[1;31m\]" # Red
BGreen="\[\033[1;32m\]" # Green
BYellow="\[\033[1;33m\]" # Yellow
BBlue="\[\033[1;34m\]" # Blue
BPurple="\[\033[1;35m\]" # Purple
BCyan="\[\033[1;36m\]" # Cyan
BWhite="\[\033[1;37m\]" # White
# Various variables you might want for your PS1 prompt instead
Time12h="\T"
Time12a="\@"
PathShort="\w"
PathFull="\W"
NewLine="\n"
Jobs="\j"
GIT_PS1_SHOWDIRTYSTATE="true"
PS1="\n${BBlack}\[email protected]\h ${BRed}\w${BYellow}\$(__git_ps1 ' { %s }')${BGreen}\n$ "
它是完美的工作,直到昨天,当我决定更新我的笔记本电脑到Windows 10
现在它抛出这个错误:
bash: command substitution: line 1: syntax error near unexpected token `)'
bash: command substitution: line 1: `__git_ps1 ' { %s }')'
任何想法是什么导致此错误?
答
问题是在ps1里面结尾的新行。我找到了解决方案here。改变了我的PS1到:
PS1="\n${BBlack}\[email protected]\h ${BRed}\w${BYellow}\$(__git_ps1 ' { %s }')${BGreen}"$'\n$ '
答
我认为错误来自这里\$(__git_ps1.....
应该$(__git_ps1.....
(没有 '\')
我已经在(窗口10/git的2.10测试这一点。 2):
PS1="\n${White}\[email protected]\h ${BRed}\w${BYellow} $(__git_ps1 ' { %s }')${BGreen}\n$ ${Color_Off}"
并没有什么问题
好找。我一直喜欢单行提示'PS1 ='\ [\ e [0; 37m \] \ D {%R} \ [\ e [1; 34m \] \ h:\ w> \ [\ e [ 0m \]“'给它一个旋转(我用一个黑暗的xterm)。 –
也帮助了我,谢谢!必须在Git \ etc \ profile中更改一行,重新启动控制台,就像魅力一样。 – FloppyNotFound
当您使用PS1 =“bla bla”的双引号时,当您使用.git repo进入和退出文件夹时,它会自动刷新?因为我的bash 4.3.42(5)-release(x86_64-pc-msys)只会在你登录特定目录时刷新,然后它会卡住分支名称,即使我改变目录。 – tvl