in reply to More pipe problems

   Why the heck doesn't the program die? The error prints but the program plows on

You've gotten answers to solve your problem, but your statement puzzled me.  Actually, the error doesn't print:

"Can't open perl script "non-existant_file": No such file or directory"

Is a completely different error (notice yours mentions "pipe") which is, of course, the message coming from the *successfully* forked perl (see spudzeppelin just above).  It appears where you expect to see your error because, as all the docs say, the forked program inherits STDOUT from its parent. (Don't worry, this will be confusing no matter how long you live with it.)

  p