Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 为什么在远程VM上使用nvm和Thread配置节点时,这不起作用?_Node.js_Bash_Ssh_Nvm - Fatal编程技术网

Node.js 为什么在远程VM上使用nvm和Thread配置节点时,这不起作用?

Node.js 为什么在远程VM上使用nvm和Thread配置节点时,这不起作用?,node.js,bash,ssh,nvm,Node.js,Bash,Ssh,Nvm,我试图用脚本自动化VM配置,但在访问在~/.bashrc、~/.bash\u profile或~/.profile中设置的某些路径变量时遇到一些问题 我的远程VM正在运行Ubuntu14.04LTS,我正在通过ssh进行部署 这是连接在一起作为bash命令运行的阵列,通过安装nvm来配置vm: 返回[ rm-rf~/.nvm, sudo-apt-get-update, sudo apt get install-y build-essential libssl dev, curl-sLhttps:

我试图用脚本自动化VM配置,但在访问在
~/.bashrc
~/.bash\u profile
~/.profile
中设置的某些路径变量时遇到一些问题

我的远程VM正在运行Ubuntu14.04LTS,我正在通过ssh进行部署

这是连接在一起作为bash命令运行的阵列,通过安装nvm来配置vm:

返回[
rm-rf~/.nvm
sudo-apt-get-update
sudo apt get install-y build-essential libssl dev
curl-sLhttps://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh -o安装_nvm.sh
bash安装\u nvm.sh
echo“source~/.nvm/nvm.sh”>>~/.bash\u profile
].join('\n')

返回[
`rm-rf~/.nvm`,
`sudo-apt-get-update`,
`sudo apt get install-y build essential libssl dev`,
`curl-sLhttps://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh -o安装_nvm.sh`,
`bash安装\u nvm.sh`,
`echo“source~/.nvm/nvm.sh”>>~/.bash\u配置文件`

].join('\n')根据您正在使用的事实,正如您在评论中所说的那样,在运行
nvm
命令之前,我将在实际
source~/.nvm/nvm.sh
中添加一行。在运行该命令之前,您可能无法在shell中使用该命令

更改此项:

返回[
`rm-rf~/.nvm`,
`sudo-apt-get-update`,
`sudo apt get install-y build essential libssl dev`,
`curl-sLhttps://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh -o安装_nvm.sh`,
`bash安装\u nvm.sh`,
`echo“source~/.nvm/nvm.sh”>>~/.bash\u配置文件`

].join('\n')
您是否已确认在运行第二组命令时安装了
nvm
?只是想确定它应该存在。另外,对于您正在进行外壳处理的用户,您是否已确保将用户的外壳设置为
/bin/bash
,而不是类似
/bin/sh
?因此第二个命令在第一个脚本(节点进程从第一个脚本退出时为0)后作为&&运行,因此应该已经安装了它。至于用户shel,我该如何确认?还有为什么这很重要?这很重要,因为它可能没有路径中需要的东西。您正在从
.bash\u配置文件
脚本中获取它的源代码
~/.nvm/nvm.sh
。我知道,获取nvm可执行文件将使我能够访问它。我想写一个我不需要做的脚本,就像我在本地使用nvm时不需要做的那样