Я видел, что rvm (менеджер версий ruby) устанавливается с помощью следующей команды:
bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )
Итак, насколько я понимаю, мы получаем содержимое сценария и передаем его в bash (я верю, < <
и <<
это то же самое?). Я заинтересован в этой < <
части, нашел следующее описание в сети:
<<
токен Означает использование текущего входного потока в качестве STDIN для программы, пока токен не будет виден.
Мне это как-то непонятно, кто-то может привести пример или объяснить это более простым способом?
источник
diff <(ls) <(ls -a)
bash <(curl ...)
вместо того,bash < <(curl ...)
чтобы не красть STDIN, вы можете отвечать на запросы и вводить данные в сценарий.Это запутанный способ сделать проще:
источник