解释这个命令:。 〜/ NVM / nvm.sh

时间:2012-09-05 16:49:15

标签: linux bash nvm

我绝不是Linux上的新手用户,但我只是不明白为什么要放。在这个命令面前:

. ~/nvm/nvm.sh

对于那些知道的人来说,这是如何激活nvm bash脚本(它允许NodeJS Universe中的虚拟环境)。但如果一个人没有把这个开始时期放在命令面前,那么事情就不会有效。据我所知,“。”表示当前目录。但如果我这样做:

cd ~/nvm
nvm.sh

或者

~/nvm/nvm.sh

它无效。为什么?为什么一个人必须“。”然后在运行此命令之前使用空格。

2 个答案:

答案 0 :(得分:12)

. ~/nvm/nvm.sh

它要求口译员解释当前流程中的脚本。在bash中,它相当于:

source ~/nvm/nvm.sh

如果您希望更改环境(变量等),则需要在当前进程中执行脚本。您可以使用help .

查看更多详细信息
~/nvm/nvm.sh

这个实际上在新的bash过程中运行脚本。它不能改变父项的环境,例如它无法将变量导出到父进程。

答案 1 :(得分:2)

.表示在当前shell中运行,因此您在脚本中设置或设置的环境变量是共享的。我打算为脚本启动一个新的shell,将它放在一个无法运行的环境中。