Команда не найдена после установки npm в zsh
У меня возникли проблемы с установкой клятва через npm в zsh. Вот что я понял. Я попытался установить его с опцией-g и без нее. Ты хоть понимаешь, что здесь не так?
[❤ ~/Desktop/sauce-node-demo:master] npm install -g vows
npm http GET https://registry.npmjs.org/vows
npm http 304 https://registry.npmjs.org/vows
npm http GET https://registry.npmjs.org/eyes
npm http GET https://registry.npmjs.org/diff
npm http 304 https://registry.npmjs.org/eyes
npm http 304 https://registry.npmjs.org/diff
/usr/local/share/npm/bin/vows -> /usr/local/share/npm/lib/node_modules/vows/bin/vows
vows@0.6.4 /usr/local/share/npm/lib/node_modules/vows
├── eyes@0.1.8
└── diff@1.0.3
[❤ ~/Desktop/sauce-node-demo:master] vows
zsh: command not found: vows
спасибо
5 ответов
Если вы установили узел.JS используя Homebrew, двоичные файлы npm можно найти в /usr/local/share/npm/bin
. Вы должны убедиться, что этот каталог в переменную окружения PATH. Итак, в вашем добавить export PATH=/usr/local/share/npm/bin:$PATH
.
добавить source /home/YOUUSERNAME/.bash_profile
в начале ~/.zshrc
и все отсутствующие команды будут обнаружены.
на Mac пользователи : добавить source /Users/YOUUSERNAME/.bash_profile
на macOS пользователи: рассмотрите возможность использования .profile
вместо of .bash_profile
. Возможно, Вам все равно придется вручную добавить его в ~/.zshrc
:
source $HOME/.profile
обратите внимание, что по умолчанию такого файла нет! цитируя slhck https://superuser.com/a/473103:
в любом случае, вы можете просто создать файл если он не существует и открыть его в текстовом редакторе.
touch ~/.profile open -e !$
добавленная стоимость это хорошо использовать один файл для настройки среды, независимо от используемой оболочки. Загрузка файла конфигурации bash в zsh чувствовала себя неловко.
цитирование принятого ответа Cos https://stackoverflow.com/a/415444/2445063
.profile
- это просто имя файла сценария входа, первоначально используемое/bin/sh
. bash, как правило, обратно совместим с/bin/sh
читать.profile
Если есть
Следующим Филип Исследование / мнение Экберга https://stackoverflow.com/a/415410/2445063
.profile
эквивалентно.bash_profile
для корня. Я думаю, что имя изменено, чтобы другие оболочки (csh, sh, tcsh) также использовали его. (вам не нужен один как пользователь)
возвращаясь к slhck, a внимание внимание относительно Баш:
(...) после создания файла под названием
~/.bash_profile
ваш~/.profile
читать не будут больше.
еще одна вещь, чтобы попробовать, и ответ для меня был раскомментировать первый export
на ~/.zshrc
# If you come from bash you might have to change your $PATH.
export PATH=$HOME/bin:/usr/local/bin:$PATH
Я думаю, что проблема больше в завершении ZSH.
вам нужно добавить эту строку в свой .zshrc:
zstyle ':completion:*' rehash true
Если у вас есть Oh-my-zsh, PR был сделан, вы можете интегрировать его, пока он не будет вытащен:https://github.com/robbyrussell/oh-my-zsh/issues/3440