2014-01-07 88 views
0

我試圖更新節點(在Ubuntu上),並且一直在使用n包來做到這一點。更新到特定版本的節點:路徑很奇怪?

我已經運行以下命令:

$ sudo npm install -g n 
% sudo n 0.10.21 

這似乎運行正常,但現在我得到如下:

$ which node 
/usr/local/bin/node 

$ node -v 
0.6.4 

$ /usr/local/bin/node -v 
0.10.4 

這是莫名其妙的給我。

我怎樣才能擺脫0.6.4,並確保0.10.4是什麼運行時,我輸入node

+0

'node -v'是否在新的shell中工作? –

+0

我用'nvm'來解決這個問題。 – flossfan

回答

0

這實際上是一個shell問題。我只看到它在bash中,但這裏有:

Bash緩存它在過去發現命令。這意味着如果你在PATH的早些時候放置一個可執行文件(名稱與以前運行的名稱相同),which將正確地找到新的可執行文件,但是bash會打開緩存並運行舊緩存。

最簡單的方法就是關閉你的shell並打開一個新的。但是,您可以使用命令hash -d node從緩存中清除node(或type node以查看它是否在緩存中以及它指向的內容)。