以下是我试图理解的两个命令。第一个命令下载NVM
(nodejs 版本管理器)的安装脚本并执行它。第二个命令nodejs
使用新安装的进行安装nvm
。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
nvm install 14.15.1
我的问题是:
- 它有什么
-o-
用?找不到任何相关信息。 - 这里使用管道运算符有什么意义
|
?为什么不使用链接运算符;
?
答案1
-
按照惯例,文件名“ ”通常表示STDOUT
标准输出流“ ”,因此“ -o-
”curl
将 的输出(其检索到的文件)写入 的curl
“ STDOUT
”。
在这种情况下,检索到的是一个bash
脚本,管道(“ |
”)curl
将 的输出连接到bash
的标准输入,以解释(执行)该脚本。
这是一种检索脚本并执行它的方法,但无法查看脚本的作用。这不是一个好主意。这是一个信任问题。