【问题标题】:eval "$(rbenv init -)" does not work when referenced from ~/.zshrc (OS X)从 ~/.zshrc (OS X) 引用时,eval "$(rbenv init -)" 不起作用
【发布时间】:2017-02-06 00:31:10
【问题描述】:

这是一件奇怪的事情,尽管我确信最近安装的 Sierra 与此有关。 事实上,昨天晚上我不得不完全(手动删除)整个 rbenv 文件夹以使其再次工作。

简而言之,在 ~/.zshrc 文件中的 PATH 声明之后立即添加了以下 eval "$(rbenv init -)"。 但是,在启动 iTerm 控制台时,该行传递被忽略了,实际上垫片下的所有 gem 都被忽略了。这也应该会导致加载默认的 ruby​​ 版本,而ruby -v 不会返回我最近安装的全局 2.3.1。

有趣的是,命令行中的eval "$(rbenv init -)" 可以正确解析,之后一切正常。

我有另一台 Mac,无法安装 Sierra,但相同的设置、相同的 ZSH 版本等工作正常。

有人有同样的经历吗?

谢谢 安德烈亚

【问题讨论】:

  • 你的路径中有rbenv吗?尝试export PATH="$HOME/.rbenv/bin:$PATH",然后在您的~/.zshrc 中尝试eval "$(rbenv init -)"
  • 我在 Sierra,一切正常。你也应该安装xcode?你有吗?
  • 上面的路径不存在,但是当我从执行的同一个终端窗口中摩擦 rbenv 时,这听起来不是问题吗? A which rbenv 返回以下路径 /local/bin/rbenv
  • 是的,我用 PATH 删除了这一行,它似乎仍然有效......

标签: ruby zsh rbenv


【解决方案1】:

好的,我已经扫了 30 分钟没有结果,所以我做了一个简单的测试。 我没有复制和粘贴 rbenv init 提出的结果,而是将建议的内容输入到 ~/.zshrc 文件中,让它像魅力一样工作。

我只能假设屏幕上显示的某些字符以某种不同的方式编码,因此它们会产生问题。

【讨论】:

  • 这并没有回答这个问题,而是让它没有实际意义。我只是删除它。
  • 嗯,不知道为什么你认为它没有回答。恕我直言,它从建议的内容中复制和粘贴似乎不起作用。
猜你喜欢
  • 2015-04-24
  • 1970-01-01
  • 2010-10-31
  • 2015-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多