有人可以解释一下这个bash命令吗?

时间:2011-03-08 03:56:35

标签: bash terminal

来自RVM的网站:

bash < <( curl https://rvm.io/releases/rvm-install-head )

第一个小于符号的含义是什么?那<(怎么样?我知道这是一个愚蠢的问题,但我很想理解这一点。

2 个答案:

答案 0 :(得分:7)

Bash process substitution用来自/向儿童的管道替换<( ... )>( ... )。因此,整个事情意味着“从curl ...创建一个管道,并将其用作stdin来打击”。

相当无意义,写得更好

curl -L https://get.rvm.io | bash

答案 1 :(得分:2)

这称为流程替换。 curl命令的输出通过匿名命名管道发送到bash的标准输入。基本上整个命令正在执行的是执行curl检索的shell脚本。

我认为它有风险,但有些人似乎对它很好。但是,如果您检索文件并在单独的步骤中运行它,则您有机会先检查它。无论你做什么,如果你一起做, 以root身份或sudo下运行。