我刚安装了RVM,但是不能让它工作。我在我的.profile文件的末尾有这样的一行:

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

我试图运行源.profile和重新启动终端,但仍然,当我运行rvm使用1.9.2时,我得到:

RVM is not a function, selecting rubies with 'rvm use ...' will not work.

我的系统是Ubuntu 11.10。


当前回答

我也犯了同样的错误,但这一页上的解决方案似乎都不起作用。对我来说,把rvm可执行文件添加到我的路径就足够了:

PATH=$PATH:/usr/local/rvm/bin/

和拖鞋!

其他回答

您没有使用登录shell。

这里描述了启用登录标志的过程,也可以在这里找到登录shell的一些详细信息。

因此,您需要检查Gnome终端设置中的“作为登录shell运行”选项。设置标志后,需要打开新的终端。

有时需要将命令设置为/bin/bash——login。


对于远程连接,重要的是要理解运行交互式ssh会话和执行单个命令之间的区别。

当运行ssh服务器,然后与服务器交互工作时,默认情况下,您正在使用登录shell,这一切都很好,但对于ssh服务器“命令”,您不使用登录shell,它将被要求与ssh服务器“bash -lc”命令“”一起运行。

任何远程调用都可能存在与使用ssh执行单个命令相同的问题。

我在一个新的rvm安装中也遇到了这个问题,这里的答案都没有解决它。进入官方rvm站点,在基础部分,他们有这样的命令:

# from http://rvm.io/rvm/basics rvm env——path (rvm 1.9.3)

您应该将1.9.3更改为您真正想要的ruby版本,并且它将使rvm成为一个函数,而不考虑shell类型。

我得到了同样的错误,因为我曾经用apt-get命令安装了旧的rvm版本ruby-rvm。

我通过删除在.bashrc文件中配置旧rvm的脚本行来解决这个问题。

检查旧的rvm config脚本,然后运行source .profile

我也犯了同样的错误,但这一页上的解决方案似乎都不起作用。对我来说,把rvm可执行文件添加到我的路径就足够了:

PATH=$PATH:/usr/local/rvm/bin/

和拖鞋!

对于那些有同样问题的人,他们像我一样使用lubuntu,我点击了这个链接:

你以

lx终端-e“bash -il”

感谢@mpapsis给我指明了正确的方向