[Tutor] "standard output: Broken pipe"

Alan Gauld alan.gauld at btinternet.com
Sun Oct 21 08:43:32 CEST 2007


"James" <jtp at nc.rr.com> wrote

> Given this explanation, it's probably not a great idea to use
> signal.signal() then.  ;)

I'm probabably painting too black a picture, its just that I've had
problems using signal in the past. Where the signal is specific
to a single process it should be OK.

> Any other thoughts?  I've tried about redirecting my output using
> subprocess.Popen( ... , stdout=*something* ), but I haven't had much
> luck.  The error still appears.  Or should I be redirecting the
> "stderr" instead of "stdout"?

It will almost certainly be stderr that you need to redirect:
the stdout of yes is a stream of 'y's so the error message
must be to stderr.

> Any ideas on how to use subprocess.Popen() to make this lovely 
> little
> error disappear?

I think you can just change stdout= to stderr= in the Popen call.
/dev/null might even work! (assuming you are on Unix - and since
you are using yes that seems likely!)

Alan G. 




More information about the Tutor mailing list