handle SIGPIPE

This commit is contained in:
Peter Kleiweg
2026-03-26 18:03:36 +01:00
parent b4d6d06146
commit d2e866720c
4 changed files with 38 additions and 2 deletions

26
cmd/flush/flush.go Normal file
View File

@@ -0,0 +1,26 @@
package main
import (
"bufio"
"os"
"os/signal"
"syscall"
)
func main() {
doOUt := true
chSignal := make(chan os.Signal, 1)
signal.Notify(chSignal, syscall.SIGPIPE)
scanner := bufio.NewScanner(os.Stdin)
for scanner.Scan() {
line := scanner.Text()
select {
case <-chSignal:
doOUt = false
default:
}
if doOUt {
os.Stdout.WriteString(line + "\n")
}
}
}