unless ($pid = open3(\*WRITE, \*READ, \*READ, $prog, $prog_args)) { print "

Error..."; return; } READ->autoflush(1); # waitpid $pid, 0; # ? unless ($pid) { print "

Error..."; close WRITE; close READ; return; } close WRITE; print "
"; while () { if (/^Job/) { print "$_
\n"; } elsif (/\w+/) { $_ =~ s/"(.*?)"/$1<\/b>/g; print "$_
\n"; } } close READ;