Ruby 为什么通过 su 切换到用户可以正常使用 ruby,但 ssh 登陆后不能正常使用?

dggy · 2024年03月26日 · 最后由 dinger 回复于 2024年03月27日 · 384 次阅读

我遇到的情况 系统版本

你 ssh 登录之后的 ruby 用的是 mac 系统内置的 ruby(2.6.1),和 rbenv(3.3.0) 的冲突的,你可以运行一下

which ruby

就知道怎么解决了

ailen 回复

打印了 /usr/bin/ruby 然后,,,我还是不知道怎么解决,,,可以麻烦详细介绍一下吗,非常感谢

ailen 回复

我运行了 rbenv versions (用 ssh 登陆),显示只有 system,是不是只有“系统带的那个版本”
我用管理员用户安装的 ruby3.3.0,找不到

rbenv versions

你在通过 su 切换到用户的 console 中你当前所在的运行环境还是 ppz 的 context 中,相当于没有变化,所以你的 terminal 显示的还是 ppz % ruby -v 当你通过 ssh 连接的时候就是在 ppzreboot 的用户 context 了,也就是说你的 ppzreboot 用户并没有真正安装好 ruby

echo $PATH

我也遇到了类似的问题

source ~/.bash_profile 试试

需要 登录 后方可回复, 如果你还没有账号请 注册新账号