#!/opt/bin/perl if (@ARGV != 3) { print "\nUsage: merge \n\n"; print "Alternately writes a line from and to \n\n"; exit; } $file1 = shift; $file2 = shift; $file3 = shift; unless (open(FILE1, "<$file1")) { die "can't open file '$file1': $!\n"; } unless (open(FILE2, "<$file2")) { die "can't open file '$file2': $!\n"; } unless (open(FILE3, ">$file3")) { die "can't open file '$file3': $!\n"; } $ok = 1; while ($ok) { $ok1 = ($line1 = ); $ok2 = ($line2 = ); print FILE3 $line1 if ($ok1); print FILE3 $line2 if ($ok2); $ok = $ok1 || $ok2; } close(FILE1); close(FILE2); close(FILE3);