/bin / sh^M: плохой интерпретатор: нет такого файла или каталога
когда я вхожу brew doctor
(или brew
команда) в моем терминале я получаю это как ответ:
-bash: / usr / local/bin /brew:/bin / sh^M: плохой интерпретатор: нет такого файла или каталога
Я видел ^M
ответ раньше, и я думаю, что это связано с файлами окончания строки dos. Есть ли способ исправить это?
2 ответов
Я не знаю, как возврат каретки оказался в вашем файле brew, но вы можете удалить их с помощью dos2unix
или по трубопроводу через tr -d '\r'
.
пример:
tr -d '\r' < /usr/local/bin/brew > myfixedbrew
после проверки, вы можете использовать
mv myfixedbrew /usr/local/bin/brew && chmod a+x /usr/local/bin/brew
заменить старый.
Это сработало для меня:
- открыть файл / usr / local/bin / brew с vi (
vi /usr/local/bin/brew
) - в то время как на vi выдайте эту запятую (через esc или :)
:set fileformat=unix
- закрыть файл на vi через
:wq!
команда brew должна быть в порядке.
С уважением.