目前我的 Windows Git Bash shell 提示符如下所示:
UserName@ComputerName Path (Branch)
当我echo $PS1
,我得到:
\[\033]0;$MSYSTEM:\w\007\]\n\[\033[32m\]\u@\h \[\033[33m\]\w$(__git_ps1)\[\033[0m\]\n$
在我的.bashrc
文件中,我尝试像这样更新它:
PS1="\[\033[32m\]\w$(__git_ps1)\[\033[0m\]\n$"
发生的事情是我失去了UserName@ComputerName
原本的意图。不过不知为何,$(__git_ps1)
也消失了。
但是,当我这样做时:PS1=${PS1:46}
它按预期工作。
我的计划是添加一些额外的更改(用任何内容替换固定路径),这样子字符串方法就不是最优的了。
这是怎么回事?
更新:
当我PS1="\[\033[33m\]\w$(__git_ps1)\[\033[0m\]\n$"
直接在 shell 中执行时,它也可以按预期工作。