Как исправить ошибки «Команда не найдена» в командной строке Mac
Оглавление:
Продвинутые пользователи Mac, использующие командную строку, могут иногда сталкиваться с сообщением об ошибке «команда не найдена» при попытке запустить что-либо в командной строке. Ошибка «команда не найдена» в Терминале может появляться по нескольким причинам в командной строке MacOS и Mac OS X, как мы обсудим здесь, и, конечно же, мы предложим решения этих проблем.
Почему вы видите сообщения об ошибках «команда не найдена» в командной строке
Четыре наиболее распространенные причины, по которым вы можете увидеть сообщение «команда не найдена» в командной строке Mac, следующие:
- неправильно введен синтаксис команды
- команда, которую вы пытаетесь запустить, не установлена
- удалена команда или, что еще хуже, удалена или изменена системная директория
- пользователи $PATH не заполнены, или $PATH был ошибочно установлен, сброшен или очищен — это наиболее распространенная причина появления сообщения «команда не найдена»
К счастью, вы можете решить все эти проблемы и снова получить стандартную работу, как и ожидалось. Если вы просто ввели неправильный синтаксис, правильный ввод решит эту проблему, легко! Кроме того, мы начнем с наиболее распространенной причины, которая заключается в том, что пользовательский $PATH не установлен должным образом или был каким-то образом сброшен.
Исправление сообщений терминала «Команда не найдена» в Mac OS с настройкой $PATH
Наиболее вероятная причина, по которой пользователи Mac могут неожиданно увидеть сообщение command not found в командной строке, заключается в том, что что-то пошло не так с пользователем $PATH или путь, по которому находится команда, не задан. Вы можете проверить $PATH с помощью «echo $PATH», если хотите, в противном случае вы можете просто запустить следующие команды, чтобы установить стандартный путь по умолчанию, который Mac OS использует в командной строке:
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin "
Нажмите клавишу возврата и снова запустите команду, она должна работать нормально.
Кстати, несмотря на то, что мы фокусируемся здесь на Mac OS, эта же идея применима и к другим разновидностям Unix и Linux.
Обратите внимание, если предполагаемая команда, которую вы пытаетесь использовать, находится в нестандартном каталоге или в другом месте (/usr/local/sbin/etc), вы всегда можете добавить этот новый $PATH в командная строка, чтобы указать, где искать, если это необходимо.
Раньше, когда сообщение «команда не найдена» показывало выполнение простых команд строки ls и cd:
После того, как эти команды работают успешно, как и ожидалось:
Как это произошло? Иногда может быть запущена неполная или неправильная команда экспорта $PATH, сбой настройки переменных среды и другие причины.
Возможно, вам потребуется обновить оболочку командной строки, чтобы изменения вступили в силу. Если вы перезапустите терминал и снова получите сообщение об ошибке «команда не найдена», добавьте команды экспорта $PATH в пользовательские .bash_profile, .profile или соответствующий профиль оболочки, если вы используете альтернативную оболочку в приложении «Терминал».
«Команда не найдена», потому что команда не установлена? Используйте HomeBrew
Если команда просто не установлена на Mac, для распространенных примеров, таких как wget, htop или многих других полезных команд unix, доступных в виде пакетов Homebrew, которые иначе не предустановлены в Mac OS, тогда Самое простое решение — установить и использовать Homebrew на Mac, чтобы получить доступ к этим утилитам командной строки. В любом случае, Homebrew — отличный инструмент, поэтому, если вы собираетесь проводить время в Терминале, он вам, вероятно, понадобится.
«Команда не найдена», потому что отсутствует системный каталог? Восстановить отсутствующие системные файлы
Время от времени пользователи Mac могут оказаться в ситуации, когда они случайно или непреднамеренно удалили системные файлы из Mac OS. Обычно это происходит, когда кто-то экспериментирует с командами rm/srm и подстановочным знаком, или, может быть, он слишком усердствовал с корзиной при входе в систему как root. В любом случае вы можете прочитать здесь, как восстановить удаленные или отсутствующие системные файлы в Mac OS и Mac OS X — обычно это включает восстановление из резервной копии или переустановку самого системного программного обеспечения.
Знаете ли вы другую причину, по которой вы можете увидеть сообщение об ошибке «команда не найдена» в терминале Mac OS? Может быть, у вас есть лучшее решение, чем то, что предложено выше? Поделитесь с нами в комментариях ниже!