다음을 사용하여 rvm(Ruby 버전 관리자)이 설치된 것을 발견했습니다.
bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )
내가 이해한 바로는 스크립트 콘텐츠를 가져와서 bash에 전달합니다( 동일하다고 생각하나요?). 이 부분에 관심이 있고 < <
온라인 에서 다음 설명을 찾았습니다.<<
< <
<<
토큰은 토큰이 표시될 때까지 현재 입력 스트림을 프로그램의 STDIN으로 사용하는 것을 의미합니다.
이것은 나에게 명확하지 않습니다. 누군가 예를 들거나 더 간단한 방법으로 설명할 수 있습니까?
답변1
아니요, < <
그리고 <<
같은 것이 아닙니다.
첫 번째 문자는 <
구문의 첫 번째 문자와 결합된 일반적인 리디렉션 문자로 구성됩니다 <(command)
. 이것은 ksh
다음과 같은 구문( bash
및 에서도 발견됨 zsh
) 입니다.프로세스 교체command
출력을 가져와서 작성 중인 파이프의 다른 쪽 끝을 나타내는 이름의 파일에 제공합니다 .command
즉, 파일에 출력이 포함되어 있다고 < <(command)
생각할 수 있습니다 .< file
command
답변2
더 간단한 것을 달성하는 복잡한 방법은 다음과 같습니다.
curl -s https://raw.github.com/... | bash