开发者社区> 问答> 正文

如何在当前shell的上下文中执行Ruby系统调用

我正在执行rvm use ...一个Ruby脚本内部的调用:

system "rvm use 2.5.5"
当上述执行时,我明白了

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

You need to change your terminal emulator preferences to allow login shell.
我很确定我是以登录shell身份登录的。在我打开的终端中使用普通的RVM命令没有问题。system命令是否在当前shell上获取或默认情况下是否使用其他内容?如果它使用其他东西,那么让Ruby在当前shell的上下文中运行命令的最佳方法是什么?

展开
收起
小六码奴 2019-04-10 16:15:58 3611 0
1 条回答
写回答
取消 提交回答
  • 使用RVM这些事情可能很棘手。试试这个:

    "/bin/bash -c -l 'rvm use 2.5.5 && '"
    注意:我想它会创建一个新的 shell环境。你真的需要访问你当前的 shell吗?

    2019-07-17 23:33:07
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Shell 脚本速查手册 立即下载
小程序 大世界 立即下载
《15分钟打造你自己的小程序》 立即下载