Instal Node Version Manager - perintah nvm tidak ditemukan


303

Saya mencoba menginstal NVM sesuai instruksi ini

Saya mengetikkan perintah ini di terminal:

$ curl https://raw.github.com/creationix/nvm/master/install.sh | sh

Setelah menjalankan instalasi, saya me-restart terminal dan mencoba menginstal Node.js dengan perintah ini:

$ nvm install 0.8

tapi saya mendapat respons:

-bash: nvm: command not found

Saya tidak yakin apa yang saya lakukan salah di sini.

Informasi tambahan--

Saya telah mencari solusi dari posting dan forum lain. Saya menemukan solusi lain menggunakan

$ git clone git://github.com/creationix/nvm.git ~/.nvm

tapi ini keluar setiap kali saya mencoba itu. Bantuan apa pun akan dihargai. Terima kasih.

Jawaban:


369

Periksa .bash_profile, .zshrcatau .profileberkas. Kemungkinan besar Anda memiliki masalah selama instalasi.

Anda harus memiliki yang berikut di akhir salah satu file tersebut.

[[ -s $HOME/.nvm/nvm.sh ]] && . $HOME/.nvm/nvm.sh  # This loads NVM

Itu . $HOME/.nvm/nvm.shsama dengansource $HOME/.nvm/nvm.sh

Lihat: Sumber File

Anda juga dapat memeriksa untuk melihat apakah Anda memiliki .nvmfolder.

ls -a | grep .nvm

Jika Anda melewatkan folder itu maka instalasi gagal menjalankan perintah git. Ini bisa jadi karena berada di belakang proxy. Coba jalankan yang berikut ini sebagai gantinya.

git clone http://github.com/creationix/nvm.git .nvm

2
The .nvmharus direktori. Itu diinstal melalui perintah berikut git clone git://github.com/creationix/nvm.git $NVM_TARGET. Anda mengatakan sebelumnya bahwa Anda mencoba menjalankan perintah itu sendiri dan gagal? Kemungkinan besar Anda berada di belakang proxy dan tidak terkonfigurasi. Coba jalankan tindak lanjutnya. git clone http://github.com/creationix/nvm.git .nvm
Travis

21
juga memiliki garis, tetapi 'source ~ / .nvm / nvm.sh' berfungsi
K - Keracunan dalam SO tumbuh.

2
Jika folder .nvm kosong itu mungkin karena pengambilan repo telah gagal karena lisensi perjanjian xcode tidak diterima. Menjalankan sudo xcodebuild -licensedan menerima lisensi (dengan mendorong spaceuntuk mencapai akhir lisensi dan menyetujui persyaratannya) melakukan trik.
Pierre Criulanscy

4
Anda mungkin juga perlu source .bashrcatau source .profiletergantung
Henry Tseng

1
Hampir selalu file-file itu ada di direktori home Anda. source $HOME/.bashrc, dll.
travis

634

Saya pikir Anda melewatkan langkah ini:

source ~/.nvm/nvm.sh

Anda dapat menjalankan perintah ini di bash ATAU Anda dapat meletakkannya di file /.bashrc atau ~ / .profile atau ~ / .zshrc untuk memuatnya secara otomatis

https://github.com/creationix/nvm


5
Mari kita buat dokumentasi yang lebih baik. Saya telah membuat masalah pada repo nvm: github.com/creationix/nvm/issues/748
Jonny Burger

3
Saya melakukan ini secara manual beberapa kali sampai akhirnya saya masukkan ke dalam .bashrc saya!
Brady Dowling

2
ini bekerja untuk saya tetapi untuk mengotomatisasi saya harus membuat profil terlebih dahulu. "sentuh ~ /. profil", "buka ~ /. profil", rekatkan di atas, simpan + tutup. bekerja di jendela baru sekarang
Sonic Soul

6
Menambahkannya ~/.bash_profileadalah apa yang berhasil untuk saya
spencer.sm

6
Ini berhasil untuk saya. Saya menambahkan source ~/.nvm/nvm.shke saya ~/.zshrcdan sekarang nvmbekerja setiap saat
Eddy Vinck

88

Ini bekerja untuk saya:

  1. Sebelum menginstal nvm, jalankan ini di terminal:touch ~/.bash_profile

  2. Setelah itu, jalankan ini di terminal:
    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash

  3. Penting ... - JANGAN lupa untuk me- restart terminal Anda ATAU menggunakan perintah source ~/.nvm/nvm.sh(ini akan menyegarkan perintah yang tersedia di jalur sistem Anda).

  4. Di terminal, gunakan perintah nvm --versiondan Anda akan melihat versinya


8
3) Jangan lupa untuk me-restart komponen kunci terminal Anda! Itu sebabnya milikku tidak berfungsi. Terima kasih
Sebastian

1
Bagaimana cara "Mulai ulang komponen Kunci terminal [mereka]"?
Edward

46

source ~/.nvm/nvm.sh Tambahkan baris ini ke ~ / .bashrc, ~ / .profile, atau ~ / .zshrc


4
ini adalah solusi "permanen" yang berlangsung di beberapa shell atau sesi shell.
ahnbizcad

Ini satu-satunya jawaban yang akan berhasil. Bahkan setelah beberapa bukaan terminal. Terakhir, jangan lupa untuk me-restart terminal Anda setelah Anda melakukan ini :)
coderpc

40

Jawaban cepat

Cari tahu yang berikut:

  1. Shell yang digunakan terminal Anda, ketik: echo $0untuk mencari tahu (biasanya berfungsi)
  2. File start-up mana yang memuat shell saat memulai (BUKAN file masuk shell awal , file awal shell normal , ada perbedaan!)
  3. Tambahkan source ~/.nvm/nvm.shke file itu (dengan asumsi file itu ada di lokasi itu, itu adalah lokasi instal default)
  4. Mulai sesi terminal baru
  5. Keuntungan?

Contoh

Seperti yang Anda lihat itu menyatakan zshdan tidak bash. masukkan deskripsi gambar di sini

Untuk memperbaiki Aku ini diperlukan untuk menambahkan source ~/.nvm/nvm.shke ~/.zshrcfile sebagai ketika memulai terminal saya Terminal Deepin baru zsh membaca ~/.zshrcdan tidak bashs ~/.bashrc.

Mengapa ini terjadi?

Ini terjadi karena ketika menginstal NVM ia menambahkan kode ~/.bashrc, karena terminal saya menggunakan Terminal Deepin zshdan tidak bashpernah membaca ~/.bashrcdan karenanya tidak pernah memuat NVM.

Dengan kata lain: ini adalah kesalahan NVM.

Lebih lanjut zshdapat dibaca pada salah satu jawaban di sini .


Anda cukup meletakkan zsh di akhir perintah curl. misalnya: curl raw.github.com/creationix/nvm/master/install.sh | zsh
Prabhakar

22

Di macOS, saya harus sumbernya menggunakan source ~/.nvm/nvm.shperintah untuk memperbaiki masalah ini.

Setelah itu, tambahkan baris ini

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm

ke ~/.bash_profilesehingga nvm akan bersumber secara otomatis saat login.


11

Semua jawaban untuk pertanyaan ini bermanfaat. Terutama jawaban yang diberikan oleh Travis membantu saya. Untuk pengguna Mac OS X saya ingin memberikan beberapa langkah yang akan membantu mereka untuk bekerja dengan instalasi baru Node Version Manager alias nvm.

Menginstal & menggunakan nvm di Mac OS X

Berikut adalah langkah-langkah untuk instalasi baru nvm dan menggunakannya tanpa masalah:

  • Instal homebrew dari sini .
  • Menggunakan homebrew install nvm

    brew update brew install nvm

  • Buat .nvmdirektori di ~/.nvmlokasi.

    mkdir ~/.nvm

  • Sekarang jika Anda tidak memiliki .bash_profilepengaturan file untuk terminal OS X maka silakan buat .bash_profiledi tingkat root:

    nano ~/.bash_profile

  • Rekatkan kode di bawah ini di .bash_profiledan tekan CTRL + Odan tekan enter untuk menyimpan .bash_profilefile. Tekan CTRL + Xuntuk keluar dari editor:

    export NVM_DIR=~/.nvm source $(brew --prefix nvm)/nvm.sh

  • Sekarang cukup ( CMD + Q) terminal atau jalankan perintah di bawah ini untuk memuat .bash_profilepengaturan:

    source ~/.bash_profile

  • Sekarang jalankan nvm lsperintah untuk mendapatkan daftar semua versi nodejs yang diinstal.


Terima kasih, saya pikir apa yang terlewatkan bagi saya adalah membuat .nvmdirektori.
icarovirtual

11

Pertama tambahkan baris berikut dalam file ~ / .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

kemudian buka terminal dan sumber skrip nvm.sh

source ~/.nvm/nvm.sh

8

OSX 10.15.0 Catalina (dirilis November 2019) mengubah shell default menjadi zsh.

Shell default sebelumnya adalah bash.

Perintah instalasi yang diberikan pada halaman nvm GitHub perlu di-tweak untuk memasukkan "zsh" di akhir.

curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | zsh

Catatan: Anda mungkin perlu memastikan .rcfile untuk zsh ada sebelumnya:

touch ~/.zsrhrc

5

Tidak terhubung langsung ke pertanyaan, tetapi ada masalah serupa yang mungkin terjadi, lihat pertanyaan ini: Tidak dapat menjalankan nvm dari bash baru


Inilah jawaban saya pada posting itu, hanya untuk referensi:

Jika Anda menjalankan dari instance bash baru, dan Anda MEMILIKI kode inisialisasi di ~ / .bashrc, ~ / .bash_profile, dll, maka Anda perlu memeriksa file inisialisasi ini untuk persyaratan.

Di Ubuntu 14, ada:

case $- in
    *i*) ;;
      *) return;;
esac

Pada baris 6, itu akan menghentikan eksekusi jika bash tidak dijalankan dengan bendera "-i" (interaktif). Jadi, Anda perlu menjalankan:

bash -i

Juga, di akhir file, ada a

[ -z "$PS1" ] && return

Itu akan menghentikan eksekusi jika tidak dijalankan dengan set $ PS1 (seperti pada sesi ssh jarak jauh).

Jika Anda tidak ingin menambahkan env vars atau flag, Anda harus menghapus persyaratan tersebut dari file inisialisasi Anda.

Semoga bermanfaat.


5

Jika Anda menggunakan OS X, Anda mungkin harus membuat file .bash_profile Anda sebelum menjalankan perintah instalasi. Itu berhasil untuk saya.

Buat file profil

touch ~/.bash_profile

Jalankan kembali instalasi dan Anda akan melihat garis yang relevan di output saat ini.

=> Menambahkan string sumber ke / Pengguna /{username}/.bash_profile

Muat ulang profil Anda (atau tutup / buka kembali jendela Terminal).

.  ~/.bash_profile

5

Untuk Mac OS:

  1. Buka Terminal
  2. Lari touch ~/.bash_profile
  3. Lari vi ~/.bash_profile
  4. Tipe source ~/.nvm/nvm.sh
  5. Tekan Shift + Escdan ketik wqdan tekanenter
  6. Selesai

Di ubuntu 18.04, saya hanya perlu: 4. Ketik sumber ~ / .nvm / nvm.sh dan terima kasih banyak!
Darnell Lynch

4

Tambahkan baris berikut ke file ~/.bashrcdan ~/.bash_profile:

# NVM changes
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

dan restart terminal atau lakukan source ~/.bashrcatau source ~/.bash_profile. Jika Anda membutuhkan penyelesaian perintah untuk nvm maka tambahkan juga baris:

[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

Seiring dengan garis di atas ke ~/.bashrcdan ~/.bash_profile.


4

Untuk MacOS;

Jalankan di Terminal>

open ~/.bash_profile

Rekatkan semua ini =

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm

2

Skrip instal nvm secara default menambahkan kode inisialisasi Anda $HOME/.profile, yang hanya dimuat oleh shell login (di lingkungan desktop Anda mungkin tidak pernah melihat shell login).

Perintah nvm di shell login Anda tidak disebarkan ke sub-shells (seperti jendela konsol dan terminal IDE setelah Anda masuk). Cuplikan ini di Anda $HOME/.bashrchanya akan memuat nvm jika itu adalah shell interaktif dan belum dimuat

# 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

Menempatkan ini di $HOME/.bashrcfile Anda akan memperbaiki masalah nvm yang hilang di shell bash interaktif, bahkan dari gui, dan bahkan jika nvm diinstal di lokasi yang tidak standar.


2

Saya telah memperbaiki masalah ini.

  1. sentuh ~ / .bash_profile
  2. buka ~ / .bash_profile
  3. tempelexport 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

2

Untuk masalah ini sudah diperbaiki ketika saya pindah

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

sampai akhir .zshrc


1

Pada Debian, serta menambahkan baris di bawah ini ke .bash_profile saya sebagai salah satu jawaban di atas. Saya juga harus membuka preferensi terminal saya (Edit -> Preferensi Profil -> Perintah) dan aktifkan 'Jalankan perintah sebagai shell login' untuk membuatnya berfungsi.

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm

Sunting: Bagi yang di Mac, ketahuilah bahwa macOS tidak membaca .bashrc di Terminal start, jadi menggunakan .bash_profile lebih disukai. Lihat disini.


1

Untuk kasus saya, itu karena saya menggunakan ikan . jika saya tidak memulai ikan , ketik saja nvm tidak akan ada kesalahan sekarang.


Bagaimana Anda menghentikan ikan ?
Matko

ketik exit @MobileDream.
JerryZhou

1

Hal yang Windows 8.1 x64sama terjadi pada saya, dan menerima pesan berikut.

nvm instal 8.3.0 bash: nvm: perintah tidak ditemukan windows

Jadi, ikuti atau verifikasi langkah-langkah berikut di bawah ini-

instal coreybutler/nvm-windowsdari github.com. Rilis terbaru yang tersedia saat ini 1.1.5 nvm-setup.zip, kemudian mengekstraksi pengaturan nvm-setup.exedan menginstal sebagai lokasi berikut:

NVM_HOME    : C:\Users\Administrator\nvm
NVM_SYMLINK : C:\Program Files\nodejs

dan sementara itu pengaturan akan mengelola variabel lingkungan Pathseperti yang dikatakan di atas untuk Anda.

Sekarang jalankan Git Bashsebagai Administrator dan kemudian.

$ 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)

di sini jalankan perintah Anda tanpa menggunakan awalan $, itu hanya ditampilkan di sini untuk menentukannya sebagai baris perintah dan sekarang kami akan memverifikasi versi nvm.

$ nvm --version
Running version 1.1.5.

Usage:
-----------------------

jika Anda memiliki masalah menggunakan nvmuntuk menginstal node, Anda dapat melihat daftar nodejsrilis yang tersedia di sini https://nodejs.org/download/release/dan memilih installer yang benar sesuai versi persyaratan Anda sama atau lebih tinggi daripada v6.3.0secara langsung.


0

Bagi saya ini berhasil. Pertama periksa apakah file .bashrcmemiliki baris berikut

[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm

Sekarang bashrcdimuat untuk setiap sesi terminal. Maka restart terminal sehingga dimuat kembali dan Anda harus baik untuk pergi.


0

Saya juga menghadapi masalah yang sama baru-baru ini dan sumber skrip nvm bash dengan menggunakan sumber ~ / .nvm / nvm.sh menyelesaikan masalah ini.


0

Gunakan kode berikut

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash`
source ~/.nvm/nvm.sh`
nvm install 0.8

0

Setelah mencoba beberapa langkah, tidak yakin apa masalahnya dalam kasus saya tetapi menjalankan ini membantu:

touch ~/.bash_profile
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash

Diverifikasi oleh nvm --version

nvm -v keluaran

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.