1

使用 nvm,我安装了几个版本的 Node.js 和最新版本的 io.js。最后,还有一个系统范围的 Node.js 安装(这是 nvm 的默认设置)。

现在,我想使用别名iojs(不是在 nvm 中,而是在 bash 中)以始终运行唯一安装的 io.js 版本。

做这样的事情是alias iojs='nvm run iojs'行不通的:

$ iojs -v
Running node system
v0.12.0

我想出的唯一解决方案是:

iojs() {
    NVM=`nvm version`
    nvm use iojs > /dev/null # will mute the command 
    node $@
    nvm use $NVM > /dev/null
}

你有更好的主意吗?

顺便说一句:alias iojs='nvm exec iojs node'也不起作用:

$ iojs -v
system version is not installed yet
4

1 回答 1

1

如果您alias iojs='nvm run iojs'的别名与别名定义中的“iojs”冲突

因此,如果您要定义别名,例如

alias myiojs="nvm run iojs"

该命令myiojs -v应该可以正常工作:

$ myiojs -v
Running io.js v1.3.0
v1.3.0
于 2015-02-21T14:43:13.283 回答