当我打开一个新的 bash 时,找不到 nvm 命令。似乎 ~/.nvm/nvm.sh 没有在 bash 启动时加载。
我已将下面的行添加到 ~/.bashrc
[[ -s /home/$USER/.nvm/nvm.sh ]] && . /home/$USER/.nvm/nvm.sh
任何想法为什么会发生?
如果您从一个新的 bash 实例运行,并且在 ~/.bashrc、~/.bash_profile 等处有初始化代码,那么您需要检查此初始化文件的条件。
在 Ubuntu 14 上,有一个:
case $- in
*i*) ;;
*) return;;
esac
在第 6 行,如果没有使用“-i”(交互式)标志运行 bash,它将停止执行。所以你需要运行:
bash -i
此外,在文件的末尾,有一个
[ -z "$PS1" ] && return
如果没有设置 $PS1 运行(例如在远程 ssh 会话上),它将停止执行。
如果您不想添加任何环境变量或标志,则需要从初始化文件中删除这些条件。
希望这会有所帮助。