无法从新的bash执行nvm

时间:2015-06-23 20:20:07

标签: bash nvm

当我打开一个新的bash时,找不到nvm命令。似乎〜/ .nvm / nvm.sh没有在bash启动时加载。

我已将下面的行添加到〜/ .bashrc

[[ -s /home/$USER/.nvm/nvm.sh ]] && . /home/$USER/.nvm/nvm.sh

任何想法为什么会发生?

1 个答案:

答案 0 :(得分:2)

如果你是从一个新的bash实例运行,并且在〜/ .bashrc,〜/ .bash_profile等上有初始化代码,那么你需要检查这个初始化文件是否有条件。

在Ubuntu 14上,有一个:

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

在第6行,如果没有使用" -i"运行bash,那将停止它的执行。 (互动)标志。所以你需要运行:

bash -i

此外,在文件的末尾有一个

[ -z "$PS1" ] && return

如果没有设置$ PS1(就像在远程ssh会话上一样),那将暂停它的执行。

如果您不想添加任何环境变量或标志,则需要从初始化文件中删除这些条件。

希望有所帮助。