Я снова столкнулся с этой проблемой и решил ее решить, так как она беспокоила меня.Этот ответ может быть похож на A, B, C оболочки, но я уверен, что он поможет начинающим, таким как я.
Итак, когда мы устанавливаем любую библиотеку, которая исполняется на терминале (в основном CLI), оболочке необходимо знать, где хранится этот двоичный файл.Короче говоря, мы должны сказать нашей оболочке, что, скажем, есть CLI с именем sapphire
, который вы хотите запустить на своем терминале, оболочка должна знать, где находится двоичный файл сапфира, который должен быть запущен.Оболочка знает это через переменную окружения $PATH
, которая указана в файле .zshrc
(если вы используете zsh в качестве оболочки) или .bashrc
(если вы используете bash в качестве оболочки) в вашем домашнем каталоге.
Чтобы узнать, какие пути включены в $PATH
(имеется в виду, где ваша оболочка выглядит в случае выполнения команды), запустите этот
echo $PATH
и проверьте, куда установил npmпакет по всему миру.Это легко, поскольку npm подскажет, где были установлены файлы.Примером может быть этот
Теперь просто проверьте, включен ли в этот путь $PATH
этот путь или нет (под этим путем я подразумеваюof grunt был установлен /usr/local/Cellar/node/10.7.0/bin/grunt
. Если он есть, grunt
будет работать гладко, и если этот путь не включен в переменную $ PATH в вашем файле .zshrc / .bashrc, вы получите ошибку типа
zsh: command not found: grunt
Все, что вам нужно сделать, чтобы решить эту проблему, - включить этот путь в $ PATH, и все готово.
Как внести изменения в .zshrc
?
Откройтефайл, используя vim или subl. Внесите необходимые изменения. Либо закройте терминал и откройте снова, либо перезапустите оболочку, запустив $SHELL
. Все будет отражено.