【问题标题】:Get current directory, not path, in a function .bashrc在函数 .bashrc 中获取当前目录,而不是路径
【发布时间】:2011-08-11 01:08:52
【问题描述】:

如果当前 rvm gemset 的名称与当前目录的名称不匹配,我想在提示符中显示 *。我可以通过使用$(~/.rvm/bin/rvm-prompt g) 毫无问题地获取当前 gemset 的名称,如果 gemset 是 foo,将返回 @foo

"@${PWD##*/}""@${\W}" 我都试过了,但不幸的是没有成功。我的整个函数如下所示:

function ps1_rvm() {
  [[ $(~/.rvm/bin/rvm-prompt g) != "@${PWD##*/}" ]] && echo "*"
}

然后我使用此函数设置 PS1 的值,以便将其输出到我的提示符。

编辑:我想获取目录名,而不是路径。

【问题讨论】:

    标签: bash rvm


    【解决方案1】:

    你试过了吗

    function ps1_rvm() {
      [[ $(~/.rvm/bin/rvm-prompt g) != $(basename $(pwd)) ]] && echo "*"
    }
    

    ?那应该可以...

    【讨论】:

    • 您好,感谢您的回答。不幸的是,这会返回目录路径,而不是目录名称。
    • 您好,很抱歉没有完整阅读您的问题。我更新了答案,请再试一次。我还修正了密码错字。
    猜你喜欢
    • 2019-01-27
    • 1970-01-01
    • 1970-01-01
    • 2012-04-12
    • 2020-03-19
    • 2019-02-18
    • 2014-04-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多