http://www.perlmonks.org?node_id=633779


in reply to Re^2: Backticks and SIGALRM
in thread Backticks and SIGALRM

Can I pipe the output of the system command to my own program and read it in line by line. That way getting the best of both?

Replies are listed 'Best First'.
Re^4: Backticks and SIGALRM
by Anno (Deacon) on Aug 20, 2007 at 13:18 UTC
    Yes, you can pipe the output of the system command to [your] own program. In perldoc -f open, see the paragraphs following
    If the filename begins with '|' ...
    Anno
Re^4: Backticks and SIGALRM
by sgt (Deacon) on Aug 20, 2007 at 13:34 UTC

    as you are using qx() (which gets the full output anyway) maybe you can simply redirect the output of your external command to a file (using the system shell and process that later

    my $cmd = "$ext_cmd > $my_output"; # using unixlike shell system($cmd) == 0 or die; #

    (ignore if your OS is not unixlike) what does happen if you manually send SIGALRM to that external process? (wrap it in a shell if the execution time is too short).

    cheers --stephan