Date: Mon, 16 Mar 1998 21:40:43 -0700 (MST) From: allen campbell <allenc@verinet.com> To: dwhite@resnet.uoregon.edu Cc: questions@FreeBSD.ORG Subject: Re: Broken pipe Message-ID: <199803170440.VAA12697@const.> In-Reply-To: <Pine.BSF.3.96.980316100609.26071P-100000@gdi.uoregon.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
> My guess would have to do with how your pager queues up the output from > the zcat. Are you using the same pager in both environments? Yes. GNU less. > The error is harmless, though -- you're reading previously formatted > manpages, and they're just catted out from the .gz archives in > /usr/share/man/catX/Y.gz. The error is harmless and I now think I understand the reason for it. I found a clue in the bash(1) FAQ; 23) Why does bash sometimes say `Broken pipe'? If a sequence of commands appears in a pipeline, and one of the reading commands finishes before the writer has finished, the writer receives a SIGPIPE signal. Many other shells special-case SIGPIPE as an exit status in the pipeline and do not report it. For example, in: ps -aux | head `head' can finish before `ps' writes all of its output, and ps will try to write on a pipe without a reader. In that case, bash will print `Broken pipe' to stderr when ps is killed by a SIGPIPE. This sounds like my observations. For some reason, my shell (pdksh) behaves differently when exec'ed by telnetd(1) as opposed to xterm(1). I don't know why this difference exists, but it seems plausible. Pdksh may be altering its behavior based on the environment it finds itself in. Is there a program that displays the state of signals for a given process? Allen Campbell allenc@verinet.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199803170440.VAA12697>