이 스크립트를 이해할 수 없습니다. bash <<(curl -s http://xxx.com)

이 스크립트를 이해할 수 없습니다. bash <<(curl -s http://xxx.com)

Rails 책에서 저자는 Ruby rvm을 설치하는 스크립트를 작성했습니다.

bash <<(curl -s https://rvm.beginrescueend.com/install/rvm)

그러나 나는 그것이 어떻게 작동하는지 이해하지 못합니다. 설명해주실 수 있나요?

답변1

<< 연산자(여기에 설명되어 있음)가 있지만 여기서는 사용되지 않습니다.

먼저 다음 매개변수에서 입력을 선택하는 것을 의미하는 입력 리디렉션이 있고 , 그 다음에 는 명령의 출력이 포함된 파일 설명자로 대체하는 프로세스 대체가 <있습니다 .<(command)

이 명령은 다음과 같이 작성할 수 있습니다.

bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)

하지만 이는 복잡한 방법일 뿐입니다.

curl -s https://rvm.beginrescueend.com/install/rvm | bash

답변2

one <<(two)명령을 실행 two하고 해당 출력을 에 파이프합니다 one. 이를 작성하는 보다 일반적인 방법은 two | one다음과 같이 작성할 수도 있습니다.

curl -s https://rvm.beginrescueend.com/install/rvm | bash

지금은 링크가 깨졌는데 홈페이지는설명하다대신 이것을 사용하십시오:

curl -L get.rvm.io | bash -s stable

curl다운로드한 내용을 출력하므로 파일을 다운로드 get.rvm.io하고 해당 내용을 bash로 파이프합니다. 그냥 명령어만 실행해보면 rvm을 다운로드해서 설치하는 스크립트 curl인 것을 알 수 있습니다.bash

관련 정보