Sto*_*ain 35 shell bash io-redirection
我已经看到使用以下命令安装了 rvm(ruby 版本管理器):
bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )
Run Code Online (Sandbox Code Playgroud)
因此,据我所知,我们获取脚本内容并将其传递给 bash(我相信< <
并且<<
是同一件事?)我对这< <
部分感兴趣,在网上找到了以下描述:
<<
token 表示使用当前输入流作为程序的 STDIN,直到看到 token。
这对我来说有点不清楚,有人可以举个例子或用更简单的方式解释吗?
enz*_*tib 44
不,< <
和<<
不是一回事。
第一个由通用<
重定向字符与<(command)
语法的第一个字符组合而成。这是一种ksh
结构(也可在bash
和 中找到zsh
),称为进程替换,它获取 的输出command
并将其提供在一个文件中,该文件的名称是指管道的另一端正command
在写入的文件。
换句话说,您可以将其< <(command)
视为< file
,其中 file 包含command
.
jll*_*gre 19
这是一种更简单的复杂方法:
curl -s https://raw.github.com/... | bash
Run Code Online (Sandbox Code Playgroud)