in reply to Re^3: Multiple asynchronous execution of commands
in thread Multiple asynchronous execution of commands
And as you pointed out, I could use IO::Select if I cared about knowing when each command finished.my $mysql = q{/usr/local/mysql/bin/mysql --host= [...]}; my @fh; my $i = 0; for my $sql ( q{SELECT id INTO OUTFILE \'/sort/clh/na\' FROM addr}, q{SELECT id INTO OUTFILE \'/sort/clh/ne\' FROM email}, q{SELECT id INTO OUTFILE \'/sort/clh/np\' FROM phone} ) { my $cmd = "echo $sql | $mysql"; open( $fh[$i++], '-|', $cmd ) or die "Failed opening $sql: $!\n"; } say "All spawned - waiting"; for my $i (0..$#fh) { while (defined (my $line = readline( $fh[ $i ] ))) { print "FH$i: $line"; } }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^5: Multiple asynchronous execution of commands
by BrowserUk (Patriarch) on Jan 23, 2016 at 01:35 UTC | |
by ibm1620 (Hermit) on Jan 23, 2016 at 23:03 UTC |