簡體   English   中英

如何從bash腳本運行NVM命令

[英]How to run NVM command from bash script

我想從bash腳本運行NVM命令,即nvm use 0.12.7 所以,我寫了bash文件:

#!/bin/bash
. ~/.nvm/nvm.sh
nvm use 0.12.7

然后在終端中以sudo ./script.sh是我的bash文件,上面的代碼被寫入)中運行命令。 Now using node v0.12.7給我結果。 但是當我檢查版本是否激活時,我發現沒有影響。 即我運行命令nvm ls ,發現結果為:

v0.12.0
v0.12.7

這意味着未激活0.12.7版本。 因此,我應該在bash腳本中編寫哪些內容,因為我可以從bash文件激活節點版本。

其中一個優點nvm是,你不需要使用sudo安裝版本或切換到另一個版本。 我不確定為什么在nvm命令中使用sudo

正如其他人也說過的那樣,問題在於在子外殼中更改了版本。 因此,“真實”外殼中的版本不會更改。

您可以使用運行腳本來完成此操作. (點空間)。 這將使腳本能夠更改當前shell中的內容。

這是我的~/bin/nvm-use-4腳本:

. /usr/local/opt/nvm/nvm.sh
nvm use 4

並使用它:

prawie:~$ nvm current
v0.10.29
prawie:~$ . nvm-use-4
Now using node v4.2.1
prawie:~$ nvm current
v4.2.1

如果您被迫在此處使用sudo ,我認為不可能完成您想要的事情,因為sudo'ed命令在子外殼中運行。

不幸的是,您沒有告訴use為什么要這樣做或想要完成什么。 可能會有更好的解決方案來解決您的問題。 例如,如果要在打開新的外殼程序時始終使用特定版本的node.js ,則可以node.js下行添加到.profile.bashrc或等效文件中:

nvm use 0.12.7

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM