Node Version Manager install-команда nvm не найдена
Я пытаюсь установить NVM в соответствии с этими - инструкции
Я набрал эту команду в терминале:
$ curl https://raw.github.com/creationix/nvm/master/install.sh | sh
после запуска установки я перезапускаю терминал и пытаюсь установить узел.js с этой командой:
$ nvm install 0.8
но я получаю ответ:
-bash: nvm: command not found
Я не уверен, что я делаю неправильно здесь.
Дополнительная Информация--
Я искал решения из других сообщений и форумы. Я нашел другое решение, используя
$ git clone git://github.com/creationix/nvm.git ~/.nvm
но это время каждый раз, когда я пытаюсь это сделать. Любая помощь будет оценена. Спасибо.
19 ответов
Проверьте .bash_profile
или . Скорее всего, у вас были проблемы во время установки.
вы должны иметь следующее В конце одного из этих файлов.
[[ -s $HOME/.nvm/nvm.sh ]] && . $HOME/.nvm/nvm.sh # This loads NVM
на . $HOME/.nvm/nvm.sh
это то же самое, что source $HOME/.nvm/nvm.sh
посмотреть: поиск файла
вы также можете проверить, есть ли у вас .
ls -a | grep .nvm
Если вам не хватает этой папки, то установка не удалось запустить команду git. Этот может быть из за прокси. Вместо этого попробуйте выполнить следующее.
git clone http://github.com/creationix/nvm.git .nvm
Я думаю, что вы пропустили этот шаг:
source ~/.nvm/nvm.sh
вы можете запустить эту команду на bash или вы можете поместить его в файл /.bashrc или ~/.профиль для автоматической загрузки
в macOS мне пришлось использовать его с помощью source ~/.nvm/nvm.sh
команда для устранения этой проблемы.
после этого добавьте следующие строки
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
на ~/.bash_profile
Так что nvm будет получен автоматически при входе в систему.
это работает для меня:
перед установкой
nvm
выполните в терминале:touch ~/.bash_profile
после этого запустите это в терминале:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash
важно... не забудьте перезагрузка терминал или используйте команду
source ~/.nvm/nvm.sh
(это обновит доступные команды в вашем системном пути).в терминале, используйте команду
nvm --version
и вы должны увидеть версию
быстрый ответ
выяснить следующее:
- какую оболочку использует ваш терминал, введите:
echo
чтобы узнать (обычно работает) - какой стартовый файл загружает эту оболочку при запуске (не начальный файл оболочки входа нормальный начальный файл оболочки, есть разница!)
- добавить
source ~/.nvm/nvm.sh
к этому файлу (предполагая, что файл существует в этом месте, это установки по умолчанию) - начать новую терминальную сессию
- прибыль?
пример
Как видите государств zsh
, а не bash
.
чтобы исправить это, мне нужно добавить source ~/.nvm/nvm.sh
до ~/.zshrc
файл как при запуске нового терминала мой терминал Deepin zsh читает ~/.zshrc
и не bashs ~/.bashrc
.
почему это происходит
это происходит потому, что при установке он добавляет код ~/.bashrc
, как мой терминал Deepin терминал использует zsh
, а не bash
Он никогда не читает ~/.bashrc
и поэтому никогда не загружает NVM.
другими словами: это ошибка NVMs.
подробнее о zsh
можно прочитать на одном из ответов здесь.
непосредственно не связан с вопросом, но есть аналогичная проблема, которая может произойти, взгляните на этот вопрос:не удается выполнить nvm из new bash
вот мой ответ на этот пост, только для справки:
Если вы работаете с новым экземпляром bash, и у вас есть код инициализации в вашем ~/.bashrc и, ~/.файл, и т. д, тогда вам нужно проверить этот файл инициализации условия.
на Ubuntu 14 есть:
case $- in
*i*) ;;
*) return;;
esac
в строке 6 это остановит его выполнение, если bash не запускается с флагом "-i" (interactive). Поэтому вам нужно будет запустить:
bash -i
кроме того, в конце файла есть
[ -z "$PS1" ] && return
это остановит его выполнение, если не запускается с набором $PS1 (например, на удаленном сеансе ssh).
Если вы не хотите добавлять какие-либо env vars или флаги, вам нужно будет удалить их условные обозначения из файла инициализации.
надеюсь, что это полезно.
Если вы используете OS X, вам может потребоваться создать свой .файл bash_profile перед запуском команды установки. Это помогло мне.
создайте файл профиля
touch ~/.bash_profile
повторно запустите установку, и на этот раз вы увидите соответствующую строку в выходных данных.
=> добавление исходной строки в /Users / {username}/.файл
перезагрузите свой профиль (или закройте/снова откройте окно терминала).
. ~/.bash_profile
добавьте следующие строки в файлы ~/.bashrc
и ~/.bash_profile
:
# NVM changes
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
и перезапустить терминал или source ~/.bashrc
или source ~/.bash_profile
. Если вам нужно завершение команды для nvm, также добавьте строку:
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
вместе с вышеуказанными строками к ~/.bashrc
и ~/.bash_profile
.
я исправил эту проблему.
- touch ~/.файл
- открыть ~/.файл
- вставить
export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
сценарий установки nvm по умолчанию добавляет код инициализации к вашему $HOME/.profile
, который загружается только оболочкой входа (в среде рабочего стола вы никогда не увидите оболочку входа).
команда nvm в вашей оболочке входа в систему не распространяется на вложенные оболочки (например, консольные окна и терминалы IDE после входа в систему). Этот фрагмент в вашем $HOME/.bashrc
будет загружать только nvm, если это интерактивная оболочка и еще не загружена
# if nvm dir is not set and the standard nvm directory exists
if [ -z "$NVM_DIR" -a -d "$HOME/.nvm" ] ; then
# set nvm dir
export NVM_DIR="$HOME/.nvm"
fi
# if nvm dir is set and this shell is interactive
if [ -d "$NVM_DIR" -a -n "$PS1" ] ; then
# if nvm command is not defined
if ! type -t nvm >/dev/null ; then
# set it
source "$NVM_DIR/nvm.sh"
fi
fi
положить это в ваш $HOME/.bashrc
файл исправит отсутствующую проблему nvm в интерактивных оболочках bash, даже из gui, и даже если nvm установлен в нестандартном месте.
на Debian, а также добавление следующих строк в мой .файл как один из ответов сказал. Мне также пришлось открыть настройки терминала (Edit -> Profile Preferences -> Command) и включить "Run command as a login shell", чтобы заставить его работать.
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
Edit: для тех, кто на Mac, имейте в виду, что macOS не читает .bashrc при запуске терминала, поэтому используется .bash_profile является предпочтительным. См. Здесь.
для моего случая, это потому, что я использую рыбное. если я не начну рыбное, просто введите nvm теперь не будет ошибки.
все ответы на эти вопросы будут полезны. Особенно мне помог ответ Трэвиса. Для пользователей Mac OS X я хотел бы предоставить некоторые шаги, которые помогут им работать со свежей установкой Node Version Manager a.к. a. nvm.
установка и использование nvm на Mac OS X
вот шаги для новой установки nvm и использования его без каких-либо проблем:
- установить homebrew из здесь.
-
С помощью homebrew установить nvm
brew update brew install nvm
-
создать . Нажмите
CTRL + X
для выхода из редактора:export NVM_DIR=~/.nvm source $(brew --prefix nvm)/nvm.sh
-
теперь либо совсем (
CMD + Q
) терминал или выполнить команду ниже для загрузки.bash_profile
параметры:source ~/.bash_profile
теперь бегите
nvm ls
команда для получения списка всех установленных версий nodejs.
для проблемы был исправлен, когда я переехал
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
до конца .zshrc
Сначала добавьте следующие строки в ~/.файл bashrc
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
после этого раскройте терминал и источник nvm.sh скрипт
source ~/.nvm/nvm.sh
для меня это сработало.
Сначала проверьте, что файл .bashrc
имеет следующие строки
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
Теперь bashrc
загружается для каждого терминального сеанса. Таким образом, перезагрузите терминал, чтобы он был загружен снова, и вам должно быть хорошо идти.
на Windows 8.1 x64
то же самое случилось со мной, и получил следующее сообщение.
nvm установить 8.3.0 bash: nvm: команда не найдена windows
Итак, следуйте или проверьте ниже следующие шаги -
установить coreybutler/nvm-windows
С github.com
. В настоящее время доступна последняя версия 1.1.5 nvm-setup.zip
, позже извлечена настройка nvm-setup.exe
и установить в следующих местах:
NVM_HOME : C:\Users\Administrator\nvm
NVM_SYMLINK : C:\Program Files\nodejs
и между тем установка будет управлять окружающей средой переменная Path
как сказано выше для вас.
теперь выполнить Git Bash
в качестве администратора и потом.
$ nvm install 8.3.0 all
Downloading node.js version 8.3.0 (64-bit)...
Complete
Creating C:\Users\Administrator\nvm\temp
Downloading npm version 5.3.0... Complete
Installing npm v5.3.0...
Installation complete. If you want to use this version, type
nvm use 8.3.0
$ nvm use 8.3.0
Now using node v8.3.0 (64-bit)
здесь выполните команду без использования префикса $
, он просто показан здесь, чтобы определить его как командную строку, и теперь мы проверим версию nvm.
$ nvm --version
Running version 1.1.5.
Usage:
-----------------------
если у вас есть проблемы с помощью nvm
установить node
, вы можете увидеть этот список доступен nodejs
релизы здесь https://nodejs.org/download/release/
и выберите правильный установщик как в вашей версии требования равной или выше, чем v6.3.0
напрямую.
Я также столкнулся с той же проблемой в последнее время и sourcing NVM bash script с помощью source ~/.nvm/nvm.sh решен этот вопрос.