내가 예상 cat <(cat)과 cat | cat같은 일을 : 표준 출력 stdin에서 라인을 복사합니다. 내 이해는 둘 다 cat서브 쉘에서 실행 하고 서브 쉘 cat의 stdout을 임시 명명 된 파이프로 cat리디렉션 한 다음 stdin이 파이프로 리디렉션 된 현재 쉘에서 다른 것을 실행 한다는 것입니다.
대신 cat <(cat)터미널에 입력 할 수 있지만 입력 라인이 복사 ^D되지 않고 신호를 보내지 않습니다 EOF. cat | cat그래도 예상대로 작동합니다.
추가 실험으로 cat =(cat)와 비슷한 어려움이 있는지 확인 cat <(cat)했지만 예상대로 작동합니다 ^D. 한 번에 stdout 까지 모든 stdin 이 복사됩니다.
누구든지 zsh가 후드에서하는 일을 이해하도록 도울 수 있습니까?