Передача команды по каналу через другую программу, которая будет перехватывать ошибки записи (например, ENOSPC
), диагностировать печать и завершаться ошибкой, если больше ничего не может быть сделано.
Эта программа может быть простой как cat
:
foobar | cat > file.txt
cat
сообщит об ошибке и умрет, а foobar
получит SIGPIPE
с действием по умолчанию, которое также умрет.