콘텐츠

터미널을 되찾는 법

역량 개발 · GeekNews · 2026.08.20

파이프라인 환경에서 프로세스가 어떻게 터미널 입력을 다시 가져올 수 있는지에 대한 심도 있는 기술적 분석 글입니다. less나 fzf 같은 도구들이 stdin이 파이프로 연결되어 있음에도 불구하고 어떻게 사용자 입력을 받을 수 있는지, 그 비밀은 /dev/tty를 통해 제어 터미널을 별도 파일 디스크립터로 여는 데 있습니다. 이 글에서는 fd 0과 fd 1을 이용해 프로세스의 위치를 판별하는 방법, 파이프의 EOF가 다음 단계로 실행 순서를 넘기는 메커니즘, 그리고 pty(의사 터미널) 환경에서의 동작 원리까지 상세히 다루고 있습니다. 또한 macOS에서의 실무적 제약과 백그라운드 프로세스의 입력 제어에 대해서도 설명하고 있어, 시스템 프로그래밍이나 셸의 동작 원리를 깊이 있게 이해하고자 하는 분들에게 매우 유익한 내용입니다.