rm fifo*txt for i in {0..4}; do perl -ne 'print $_ unless($a{$_}++)' >> fifo$i.txt ./fifo$i");} } $ln++;exit if($ln>$end);next unless($ln>$st); $a[substr($_,0,2)%$wrks] .= $_; if($ln%10000==0){for $c (0..$wrks-1){flock($fifos[$c],2);print {$fifos[$c]} $a[$c];flock($fifos[$c],LOCK_UN);$a[$c]="";}} END{for $c (0..$wrks-1){flock($fifos[$c],2);print {$fifos[$c]} $a[$c];flock($fifos[$c],LOCK_UN);} }' -- -p=$i & done; wait)