Pular para o conteúdo
Campanário dos Sinais

/static/campanario/sino/sigpipe/

Menu

SIG-020 · Recursos

SIGPIPE

Escreveu num cano sem ninguém do outro lado — é por isso que o head encerra a conversa.

Quando o leitor de um pipe fecha e o escritor insiste, o kernel toca este sino no escritor. É o segredo de grep padrão enorme.log | head terminar cedo: o head imprime dez linhas e sai; no próximo write, o produtor morre em silêncio — sem varrer o resto do arquivo à toa.

O silêncio é de propósito: pipelines se autolimitam sem que ninguém programe nada. Mas servidores que escrevem em sockets não querem morrer porque um cliente desligou — por isso ignoram o sinal e tratam o erro EPIPE no lugar.

$ yes | head -3
y
y
y
$
(o yes rodaria para sempre; o head fechou o cano e o sino o calou)
O pipeline inteiro para quando o último fecha a porta.