Tag
The article explains how interactive programs like `less` and `fzf` maintain keyboard access when input is piped, detailing the use of file descriptors and /dev/tty for direct terminal communication.
A technical discussion about EPIPE errors on write, suggesting that encountering EPIPE often indicates a design issue in how the program handles broken pipes.
This article from Harvard's CS 61 course covers Unix concepts of pipes, forks, and zombies, explaining how pipes automatically kill programs on closure and how to use pipes to implement blocking waits on child processes.