Ruby on rails -bash:ruby:未找到命令

Ruby on rails -bash:ruby:未找到命令,ruby-on-rails,ruby,ruby-on-rails-3,ruby-on-rails-3.2,rbenv,Ruby On Rails,Ruby,Ruby On Rails 3,Ruby On Rails 3.2,Rbenv,我正在使用ubuntu 12.04。 这是我的~/.profile文件: hyperrjas@serv1:~$ rbenv global 1.9.3-p392 hyperrjas@serv1:~$ rbenv local 1.9.3-p392 hyperrjas@serv1:~$ which ruby-build /usr/local/bin/ruby-build hyperrjas@serv1:~$ rbenv versions * 1.9.3-p392 (set by /home/hyper

我正在使用ubuntu 12.04。

这是我的
~/.profile
文件:

hyperrjas@serv1:~$ rbenv global
1.9.3-p392
hyperrjas@serv1:~$ rbenv local
1.9.3-p392
hyperrjas@serv1:~$ which ruby-build
/usr/local/bin/ruby-build
hyperrjas@serv1:~$ rbenv versions
* 1.9.3-p392 (set by /home/hyperrjas/.ruby-version)
hyperrjas@serv1:~$ rbenv version
1.9.3-p392 (set by /home/hyperrjas/.ruby-version)
hyperrjas@serv1:~$ rbenv rehash
hyperrjas@serv1:~$ ruby -v
-bash: ruby: command not found
hyperrjas@serv1:~$ env | grep PATH
PATH=/home/hyperrjas/.rbenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript
hyperrjas@serv1:~$ export PATH="$HOME/.rbenv/bin:$PATH"
hyperrjas@serv1:~$ ruby -v
-bash: ruby: command not found

我已经用rbenv安装了ruby的最新版本,当我尝试
ruby-v
时,我得到
-bash:ruby:command not found

运行
env | grep PATH
并确保路径中有
$HOME/.rbenv/bin

如果不是,请将其添加到~/.bash_配置文件中

# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
eval "$(rbenv init -)"
eval "$(rbenv init -)"

rbenv需要在您的~/.bash\u配置文件末尾提供这些信息:

export PATH="$HOME/.rbenv/bin:$PATH"
使用
grep rbenv~/.bash_profile
查看它们是否在那里

如果没有,请运行:

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
你应该站起来跑步

有关详细信息,请参见中的步骤2和3

有关.bashrc、.bash_profile和.profile的其他信息,请参见:


我认为您需要运行一个将ruby添加到$PATH的命令,不幸的是,我不知道该命令是什么,祝您好运!FWW,你可以考虑向RVM移动,RBEV也一样好。rbenv重量更轻,更简单,运动部件更少。RVM有很多功能,还有很多地方会出错。谢谢你,我已经尝试过了,但是我得到了同样的结果。这是我的
env | grep PATH
PATH=/home/hyperjas/.rbenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/usr/games NODE\u PATH=/usr/lib/nodejs:/usr/lib/NODE\u modules:/usr/share/javascript
谢谢打开新的终端窗口。您的更改将在下一个终端窗口登录时应用。
rbenv init
启用填隙和自动完成。我不明白为什么在rbenv doc中指定您是否正在运行ubuntu,可以添加ubuntu注意:
修改您的~/.profile而不是~/.bash\u profile。
。如果with
~/.profile
不起作用,为什么在文档中指定?很好。我认为您会发现rbenv对于“正常”开发非常有用。我使用RVM很长一段时间,觉得它对我的需求来说太大了。
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
exec $SHELL -l