nvm komutu bash betiğinde mevcut değil


39

İçinde nvmve sonunda düğümün yükleneceği bir komut dosyası oluşturmaya çalışıyorum . CURL ile
kurdum nvm. Ben .profileveya .bashrcdosyadaki değişiklikleri görüyorum (her ikisi de çalışır) ve nvmbash isteminde yazarken, mevcut seçenekleri gösterir
. Elle düğümü yükleyebilirim, ancak nvmkomutu bir kabuk betiğine koyar yerleştirmez :

nano test.sh

#!/bin/bash
nvm

ve ile çalıştırın:

chmod 755 test.sh
./test.sh

Alırım:

./test.sh: line 2: nvm: command not found

Bulamazsa nvm, düşünmek zorunda bile değilim.

nvm ls-remote 

veya

nvm install ...

Ubuntu 14.04 yüklü ve Bash benim kabuğum.


Nvm'yi çağırmadan önce komut dosyasındaki yolu yazdırır ve doğru olup olmadığına bakardım.
AProgrammer

Yanıtlar:


69

nvmkomut, bildirilen bir kabuk işlevidir ~/.nvm/nvm.sh.

Kullanabilmek için aşağıdaki komut dosyalarından herhangi birini baştan başlatabilirsiniz nvm():

. ~/.nvm/nvm.sh
. ~/.profile
. ~/.bashrc
. $(brew --prefix nvm)/nvm.sh  # if installed via Brew

Merhaba teşekkürler. Bu daha sonra nvm ~ / .nvm içinde "kurulduğundan" anlamlıdır. Ve muhtemelen sadece bir kabuk betiğidir. Yine de eksik olduğum şey nvm yazıp çalıştırabilmem, ancak ~ / .nvm içindeki kabuk komut dosyalarını çalıştırırken işe yaramaz.
okidoki

ne demek istiyorsun trying the shell scripts in ~/.nvm? nvmYukarıdaki kabuk betiğinden nasıl çalıştırılacağını açıkladım . Belirsiz bir şey var mı?
webKnjaZ

Son yorumumu hazırlamak için. "sudo find / -iname nvm *" sadece ~ / .nvm klasörümdeki şeyleri bulurum. ~ / .Nvm / nvm-exec veya ~ / .nvm / nvm.sh (kabuk komut dosyaları olduğu ortaya çıkan ~ / .nvm içindeki tek dosyalar) yürütülmesi bana "nvm" yazarken olduğu gibi nvm vermez komut satırı. Öyleyse nvm ve program arasındaki bağlantı nerede.
okidoki

Ah .. Sanırım nvmbir aliaskabuklu çevrenizde. Lütfen çıktısını gönderin which nvmve bu durumları temizleyecektir.
webKnjaZ

2
nvmYerel olarak yükledim ve biraz araştırma yaptım. nvmbir kabuk işlevidir nvm.sh, bu yüzden temelde sadece . ~/.nvm/nvm.shbetiğinizin başında kaynaklamanız gerekir (ya da yukarıda yazdığım gibi, - kaynak .profile/ .bashrc)
webKnjaZ

2

OSX’e demlemek yoluyla yüklediyseniz, demlemek kaynaklı betiği kurulumda detaylandırıldığı gibi kaynak yaparak betiğe env betiğine yükleyebilirsiniz.

Bunları önyükleme projelerim var:

brew install nvm
. $(brew --prefix nvm)/nvm.sh
nvm install
...

1

@WebKnjaZ tarafından sağlanan cevabın üstünde küçük belirtme çizgisi: Her komut için bash betiğimde çalışabilmesi için kabuk işlevi sağlamak zorunda kaldım. Bunun gibi bir şey:

. ~/.nvm/nvm.sh --version
. ~/.nvm/nvm.sh install 4.4.5

1
benim için işe yaramadı. Aşağıdaki benim için çalıştı: ~ / .nvm / nvm.sh nvm --version
jeff musk

0

Aşağıda da aynı şey benim için işe yarayan şeydi:

root @ ubuntu: / usr / src / oyun alanı # n = $ (hangi düğüm); n = $ {n% / bin / node}; chmod -R755 $ n / bin / *; sudo cp -r $ n / {bin, lib, paylaşım} / usr / local

root @ ubuntu: / usr / src / oyun alanı # sudo npm ifade '/usr/src/playground/package.json' + express@4.16.2 ifadesini 129.186’da 49 paket ekledi

Yukarıdaki komut biraz karmaşıktır, ancak tek yaptığı nvm ile etkin olan düğüm versiyonunu nvm üzerinden / usr / local / dizinine kopyalamak (kullanıcının global dosyalarının linux VPS'de yaşaması gereken yerde) ve izinleri ayarlamaktır. tüm kullanıcılar bunlara erişebilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.