-bash:/ usr / local / bin / heroku:/ usr / local / bin / ruby​​:bad interpreter:没有这样的文件或目录

每当我打开一个新的终端窗口时,我现在得到:

-bash: /usr/local/bin/heroku: /usr/local/bin/ruby: bad interpreter: No such file or directory

任何关于为什么会发生这种情况以及如何摆脱它的想法?

确保文件/usr/local/bin/heroku的第一行是#!/path/to/ruby 。 您可能需要将它从/usr/local/bin/ruby更改为/usr/bin/ruby ,或者如果找不到ruby可执行文件,请键入which rubyupdatedb && locate ruby来查找它。


如果以上不起作用……

检查你的~/.bashrc~/.inputrc~/etc/bashrc/etc/inputrc/etc/profile是否有一行试图执行/usr/local/bin/heroku

另一个想法是,您可能将此作为您的启动程序之一。 在/etc/inittab检查/usr/local/bin/heroku

如果你仍然无法在任何这些文件中找到该行,则可以运行grep -iH heroku /*

 brew install wget wget -qO- https://toolbelt.heroku.com/install.sh | sh 

-bash: /usr/local/bin/heroku: /usr/local/bin/ruby: bad interpreter: No such file or directory

你应该首先阅读终端扔出的按摩。 /usr/local/bin/ruby: bad interpreter: No such file or directory ,这意味着/usr/local/bin没有有效的ruby命令。 所以如果你已经安装了ruby但是在另一个目录中。 您可以使用ln -s链接/usr/local/bin/目录。 所以找出来,比如/usr/bin/ruby 。 你可以进入/usr/local/bin/目录运行ln -s /usr/bin/ruby 。 如果你还没有开始安装ruby ,你应该安装它并确保/usr/local/bin目录中的ruby命令

你是怎么安装heroku的? 如果来自源代码,则应使用适当的目录重新编译。

你可以编辑/usr/local/bin/heroku但是当你重新编译它时我觉得更好(谁知道heroku中更糟糕的设置在哪里)。

我遇到了类似的问题,当我尝试运行任何heroku命令时,会出现以下错误消息:

 (~/).gem/ruby/1.8/bin/heroku: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby: bad interpreter: No such file or directory 

经过一番搜索,我在〜/ .gem / ruby​​ / 1.8 / cache中找到了heroku-api gem的副本。 删除它并删除〜/ .gem / ruby​​ / 1.8 / bin中的rubygems参考文件解决了这个问题。

我在一个目录中运行“pod init”。 这给了我一个类似的错误:

  -bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file or directory 

解决方案:按照其网站上的说明安装Cocoapods。