-bash: /usr/local/bin/heroku: /usr/local/bin/ruby: плохой интерпретатор: такого файла или каталога нет

#ruby #bash #heroku

#ruby #bash #heroku

Вопрос:

Всякий раз, когда я открываю новое окно терминала, я теперь получаю:

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

Есть идеи относительно того, почему это происходит и как от этого избавиться?

Ответ №1:

Убедитесь, что первая строка файла /usr/local/bin/heroku #!/path/to/ruby . Возможно, вам потребуется изменить его с /usr/local/bin/ruby на /usr/bin/ruby , или, если вы не можете найти ruby исполняемый файл, введите which ruby или updatedb amp;amp; locate ruby , чтобы найти его.


Если вышеуказанное не работает…

Проверьте свой ~/.bashrc , ~/.inputrc~ , /etc/bashrc , /etc/inputrc , /etc/profile на строку, пытающуюся выполнить /usr/local/bin/heroku .

Другая идея заключается в том, что у вас может быть это как одна из ваших программ запуска. Проверьте /etc/inittab строку с /usr/local/bin/heroku помощью .

Если вы все еще не можете найти эту строку ни в одном из этих файлов, вы можете запустить grep -iH heroku /*

Ответ №2:

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

Ответ №3:

-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 это означает, что ruby в /usr/local/bin . Так что, если у вас есть установка ruby , но в другом каталоге. Вы можете использовать ln -s для связывания /usr/local/bin/ каталога. Так что выясните это, например /usr/bin/ruby . Вы можете попасть в /usr/local/bin/ каталог run ln -s /usr/bin/ruby . Если вы еще не начали установку ruby , вам следует установить ее и убедиться ruby , что команда в /usr/local/bin каталоге

Комментарии:

1. Я проголосовал против, потому что OP, очевидно, уже прочитал сообщение и спрашивает здесь, потому что им нужна помощь в понимании того, что это значит. «Вы должны сначала прочитать текст, который выдает терминал», просто пытается заставить их чувствовать себя плохо и бесполезно.

Ответ №4:

Как вы установили heroku? Если из исходного кода, вам следует перекомпилировать с соответствующими каталогами.

Вы можете редактировать /usr/local/bin/heroku , но я думаю, что лучше, когда вы его перекомпилируете (кто знает, где в heroku больше плохих настроек).

Ответ №5:

У меня была аналогичная проблема, которая привела к следующему сообщению об ошибке, когда я попытался выполнить какие-либо команды 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
  

После некоторых поисков я нашел копию драгоценного камня heroku-api в ~/.gem/ruby/1.8/cache . Удаление его и удаление ссылочного файла rubygems в ~/.gem/ruby/1.8/bin решило проблему.

Ответ №6:

Я запускал «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, следуя инструкциям на их веб-сайте.