运行RVM功能时出现语法错误

时间:2011-09-18 19:28:22

标签: ruby install rvm

首先,我在安装了xCode 4的mac osx 10.7.1上运行bash 3.2.48。

我已经下载了官方文档中指定的RVM,但是当我这样做时

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

我收到错误

-bash: /Users/kevin/.rvm/scripts/rvm: line 28: syntax error near unexpected token `done'
-bash: /Users/kevin/.rvm/scripts/rvm: line 28: `  done'

我在Google,rvm github问题跟踪器和stackoverflow上搜索过,但我没有得到任何有关类似问题或任何帮助我找到解决方案的信息。

似乎没有人像安装RVM 1.8.3这样的麻烦,所以当我安装在我的Mac上时,我想有些东西出了问题。

这是脚本的相应部分。

#!/usr/bin/env bash

# rvm : Ruby enVironment Manager
# https://rvm.beginrescueend.com
# https://github.com/wayneeseguin/rvm

# Is RVM loaded as a shell function already?

export HOME="${HOME%%+(\/)}" # Remove trailing slashes if they exist on HOME

if (( ${rvm_ignore_rvmrc:=0} == 0 ))
then
  for rvmrc in /etc/rvmrc "$HOME/.rvmrc"
  do
    if [[ -f "$rvmrc" ]]
    then
      if \grep '^\s*rvm .*$' "$rvmrc" >/dev/null 2>&1
      then
        printf "\nError:
        $rvmrc is for rvm settings only.
        rvm CLI may NOT be called from within $rvmrc.
        Skipping the loading of $rvmrc"
        return 1
      else
        source "$rvmrc"
      fi
    fi
  done
fi

错误在最后done

之前的if上触发

非常感谢任何帮助。

编辑:我发现了问题,我将别名误解为fi。我刚刚将其重命名并且有效。

感谢您的帮助。抱歉这个无用的问题。

3 个答案:

答案 0 :(得分:0)

我相信你不应该输入它,而是将它添加到你的〜/ .bash_profile中,至少我之前在linux上做过这个,你能指出你在哪里阅读安装步骤吗?

答案 1 :(得分:0)

这是正确的,那不是在命令行上运行,而是在你的.bash_profile或.bashrc中(带有相应的

if [-f“$ HOME / .bashrc”];然后   来源$ HOME / .bashrc  网络

你的.bash_profile中的

答案 2 :(得分:0)

因此,我决定切换到zsh有几个原因,除了将行放入zshrc之外,它没有做任何事情。但无论如何我会试着找到问题。