>>> #!/bin/sh > [] >> >> { cmd1 || error=1 }|cmd2 >> >> if test "$error" = 1; then ... > > Имеется в виду, если трубка порвалась. То что она не туда вставилась > тут не надо, мне кажется. нет, в оригинале вопрос: "если cmd1 завершается с ошибкой" {cmd1 || error=1 } | cmd2 exit $error будет имхо точным решением поставленной задачи :)