如果当前rvm gemset的名称与当前目录的名称不匹配,我想在提示符中显示*。我可以使用$(~/.rvm/bin/rvm-prompt g)
获取当前gemset的名称,如果gemset为foo,则返回@foo
。
我已经尝试了"@${PWD##*/}"
和"@${\W}"
,但遗憾的是没有成功。我的整个函数看起来像这样:
function ps1_rvm() {
[[ $(~/.rvm/bin/rvm-prompt g) != "@${PWD##*/}" ]] && echo "*"
}
然后我使用此函数设置PS1的值,以便输出到我的提示符。
编辑:我想获取目录名称,而不是路径。
答案 0 :(得分:3)
你试过吗
function ps1_rvm() {
[[ $(~/.rvm/bin/rvm-prompt g) != $(basename $(pwd)) ]] && echo "*"
}
?这应该有用......