在git-credential-osxkeychain安装之后,bash“clear”命令表现得很奇怪

时间:2013-06-13 19:04:40

标签: git bash terminal osx-mountain-lion

我是一名新的网络程序员,在我的MacBook Air(Mountain Lion)上设置Rails环境。我刚刚开始使用Hartl的Rails教程。

我安装了最新版本的git,并使用以下说明设置密码缓存:https://help.github.com/articles/set-up-git。一切似乎都运转正常。让我的存储库启动并运行,并能够将分支推送到github。

但现在,每当我在命令行中键入$ clear以清除屏幕时,bash返回:

usage: git credential-osxkeychain <get|store|erase>

并且不会清除屏幕。 $ clear命令发生了什么?

我不知道为什么会发生这种情况,是否是一个孤立的问题,或者它是否表明我的设置中存在更广泛的错误。键入$ which clear会在/ usr / local / bin / clear中显示清除。如果有人知道发生了什么,请帮忙!

更新 - 更多信息!!

实际上,@ chrisaycock是正确的,usr / bin中有一个clear命令。当我直接执行该命令(/usr/bin/clear)时,它按预期工作。但是,usr / local / bin中的clear命令是给我带来问题的命令。此外,which clear仅返回usr/local/bin并忽略usr/bin(这是因为后者是bash包含?)也许这是$ PATH问题?我已经粘贴了下面的.bash_profile和.bashrc文件。但是,当我echo $PATH时,我会得到很多意想不到的路径。我假设它来自.bash_profile中包含的.rvm内容,但我不确定。如果有人在那里有一些见解,我可以使用一些帮助理解(1)我clear命令的问题是否是$ PATH问题,(2)如何解决它,是否是$ PATH问题或不和(3)为什么echo $PATH返回如此长的路径列表(怀疑.rvm包括但想要确认)。谢谢,到目前为止评论的每个人!

echo $ PATH

    /Users/NAME/.rvm/gems/ruby-2.0.0-p195@rails3tutorial2ndEd/bin:/Users/NAME/.rvm/gems/ruby-2.0.0-p195@global/bin:/Users/NAME/.rvm/rubies/ruby-2.0.0-p195/bin:/Users/NAME/.rvm/bin:/usr/local/mysql/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin

的.bashrc

    PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting

    esource ~/.git-prompt.sh # Load in the git branch prompt script.

    export CLICOLOR=1
    export LSCOLORS=GxFxCxDxBxegedabagaced

    PS1="\w\$(__git_ps1) $ "

    ### Added by the Heroku Toolbelt
    export PATH="/usr/local/heroku/bin:$PATH"

的.bash_profile

 export PATH=/usr/local/mysql/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

source ~/.git-prompt.sh # Load in the git branch prompt script.

export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced

PS1="\w\$(__git_ps1) $ "

1 个答案:

答案 0 :(得分:1)

(1)有/usr/bin/clear(你想要的)和/usr/local/bin/clear(你不想要的)。 which clear返回将要执行的那个; which -a clear返回两者。由于在$ PATH中搜索目录时首次找到的命令被执行,而/usr/local/bin在此/usr/bin之前,因此它是/usr/local/bin/clear

(2)你可以解决这个问题。 G。通过撤消$ PATH中/usr/local/bin/usr/bin的顺序,或删除或重命名/usr/local/bin/clear

(3)$ PATH(/Users/NAME/.rvm/gems/ruby-2.0.0-p195@rails3tutorial2ndEd/bin:/Users/NAME/.rvm/gems/ruby-2.0.0-p195@global/bin:/Users/NAME/.rvm/rubies/ruby-2.0.0-p195/bin:/Users/NAME/.rvm/bin:)的前面部分似乎来自.rvm脚本; $ PATH(/usr/local/mysql/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin)的后部来自.bash_profile的第一行(此处您可以更改/usr/local/bin/usr/bin的顺序。)