Ruby Version Manager (RVM) instalado da seguinte maneira:
bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
Eu entendo o que primeiro <significa (alimenta script bash para bash intérprete), estou confuso com <(...)
parte. Então, o que os parênteses fazem aqui e o sinal menor que. Em quais casos podemos usar a mesma sintaxe?
Eu tentei cavar na internet, encontrei esta questão SO /programming/2188199/bash-double-or-single-bracket-parentheses-curly-braces e esta pergunta no ubuntuforums: http: // ubuntuforums .org / showthread.php? p = 7803008 Mas ainda não temos idéia de por que usamos esses parênteses e por que usamos o redirecionamento de entrada duas vezes.
bash < curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer
não é o mesmo?
Obrigado.
bash <(curl -s ...)
Respostas:
É substituição de processo . Alimenta a saída do comando em um FIFO que pode ser lido como um arquivo normal.
fonte
Significa "executar o comando entre colchetes e retornar um nome de arquivo que represente aqui a saída padrão desse comando".
Então, isso se traduz em dois comandos:
... onde "alguma coisa" é a mágica. (Normalmente,
/dev/fd/...
ou um cachimbo.)fonte