Почему этот канал обрезан?

Это конвейерная команда для случайной генерации 10-символьного пароля:

cat /dev/urandom | base64 | head -c 10

Мой вопрос: cat /dev/urandom | base64— это бесконечный поток вывода, который не остановится сам по себе. Но почему добавление head -c 10приводит к завершению всего канала? Я предполагаю, что cat, base64и head— это 3 отдельных процесса, как headможет завершить cat?

17
задан Mat 28 July 2013 в 11:19
поделиться