rbenv: 没有这样的命令 `shell' - 在 16.04 sudo 环境中根据 app/directory 配置 RBENV

rbenv: no such command `shell' - Configure RBENV per app/directory on 16.04 sudo environment

运行 (x)ubuntu 16.04 使用 sudo 用户 ...

使用本地用户 + sudo 插件安装了 rbenv

    cd ~
    git clone git://github.com/sstephenson/rbenv.git .rbenv
    echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
    echo 'eval "$(rbenv init -)"' >> ~/.bashrc


    git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
    echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc

    # sudo plugin
    git clone git://github.com/dcarley/rbenv-sudo.git ~/.rbenv/plugins/rbenv-sudo

rbenv install 2.4.1
rbenv global 2.4.1
ruby -v

shell 命令不适用于此设置,我缺少什么?

是否有不同于 shell 命令的方法来为 github 项目设置 RBENV(rubyversion)?

EDIT1:它在通过终端手动调用 RBENV shell 时出现,它可以工作,只是不在 #!/bin/bash 脚本中

根据您的编辑,问题似乎不是 运行 来自您的交互式 shell 的脚本。未使用 --login 选项调用的 Non-interactive shells 不会获取 .bashrc 或任何其他文件。您可以在 shell 脚本的开头手动获取 .bashrc:

. ~/.bashrc

您也可以通过将此行添加到您的 shell 脚本来初始化 rbenv 而不是任何其他配置:

eval "$(rbenv init -)"