파이프와 리디렉션


23

나는 파이프와 리디렉션을 오랫동안 사용 해 왔으며 정확히 어떻게 다른지 알지 못한다는 것을 깨달았습니다. 출력을 파일에 저장하려면>를 사용한다는 것을 알고 있습니다. 그렇지 않으면 대부분의 경우 | |를 사용합니다. 파이프와 리디렉션의 차이점을 누군가가 설명 할 수 있습니까?


답변:


25

둘 다 동일한 기본 작업을 수행합니다. 실행 된 프로세스의 파일 설명자를 리디렉션합니다. 차이점은 방법에 있습니다. 파이프는 한 프로세스의 stdout을 다른 프로세스의 stdin에 연결하는 반면 경로 재 지정은 파일에서 ( >또는 stdout에서 파일, <파일에서 stdin로) 경로 재 지정합니다.


1
Linux 및 기타 시스템의 구별 유형은 다음과 같습니다 /dev/fd. 예를 들어을 실행 echo foo > >(somecommand)하면로 확장됩니다 echo foo > /dev/fd/3. 여전히 리디렉션이지만 프로세스로 연결됩니다.
user1686
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.