in reply to Help with fork, read and write from a pipe

A little starting point:

#!/usr/bin/perl use strict; use warnings; print "Starting external program. Waiting for input.\n"; open my $fh, "-|", "while true; do date; sleep 1; done"; my @lines; while(defined(my $line = <$fh>)) { chomp $line; push @lines, $line; if(@lines >= 20) { my $howmuch = @lines; print "Read '$howmuch' lines from external program.\n"; print "Stats are...calc calc calc.\n"; print "The following lines where read:\n"; print map { "$_\n"; } splice @lines; print "Going to sleep.\n"; sleep 20; } }

Looking at the docs of the used commands should push you forward. Search here helps also (reading from external program, capturing from external program).

Best regards
McA

Replies are listed 'Best First'.
Re^2: Help with fork, read and write from a pipe
by h123 (Novice) on Jan 27, 2014 at 09:15 UTC
    Hi, Thanks this has helped. I am now able to generate my files once it has the 20 lines

      I'm happy to hear that. Thanks for the feedback.